Overview
Developed a full-stack PERN blood donation platform connecting donors with recipients efficiently through secure APIs and responsive dashboards.
Technology Stack
React.jsNode.jsExpress.jsMongoDBFirebaseTailwindCSSDaisyUIStripeTanStack Query
Key Highlights
- •Developed a full-stack MERN blood donation platform connecting donors with recipients efficiently.
- •Implemented role-based dashboards for Admin, Donor and Volunteer with fine-grained permissions.
- •Built secure authentication using Firebase (Email/Password) with JWT-protected private APIs.
- •Designed and developed a fully responsive dashboard UI with TailwindCSS, DaisyUI and Framer Motion.
- •Implemented complete donation request lifecycle management (pending - in-progress - done/canceled).
- •Integrated Stripe payment gateway for funding and donation transparency.
- •Added advanced features like search donors by blood group, district and upazila, pagination and filtering.
- •Used TanStack React Query for efficient server-state management and optimized API handling.
- •Ensured security using environment variables, reload-safe private routes and role-based route protection.
- •Developed RESTful APIs with Node.js, Express.js and MongoDB, deployed using Firebase Hosting & Vercel.
Challenges Faced
- •Implementing role-based dashboards for Admin, Donor and Volunteer with reload-safe private routes and fine-grained permission checks.
- •Keeping the donation request lifecycle states consistent for all users while handling pagination and multi-filter donor search.
- •Securing the platform with environment variables, JWT and Firebase while keeping the UI fast and responsive.
- •Integrating Stripe for transparent funding without making the donation flow feel heavy or slow.
Improvements & Future Plans
- •Add real-time notifications (WebSockets / Firebase) so donors and recipients get instant status updates.
- •Introduce blood-stock management for blood banks with SMS and WhatsApp alerts.
- •Add user profile verification, donation history and an analytics dashboard.
- •Improve performance with smarter caching and evaluate a PostgreSQL migration path.