RedLife is a full-featured blood donation platform developed with React.js. It empowers users to register as blood donors, browse active donation requests, contribute to blog content, and even fund life-saving initiatives β all in a beautifully responsive design.
π΄ Live Site: https://redlife1.web.app/
- π₯ Role-based access (Donor, Volunteer, Admin)
- π Blog management with rich-text editor (Jodit)
- π Dashboard-specific views for each user type
- π Donor request creation and tracking
- π Donor search with filters (blood group, district, upazila)
- π¬ SweetAlert2 & toast for user feedback
- π§Ύ Funding page with Stripe integration
- π Protected routes with JWT (persistent on reload)
- π BD Geocode-based district and upazila selector
- π± Fully responsive across mobile, tablet, and desktop
- React with Vite
- Tailwind CSS for styling
- TanStack Query for efficient data fetching
- React Hook Form for forms
- Framer Motion for animations
- Jodit React for blog editing
- Stripe API for payment integration
- JWT for authentication and authorization
- react
- react-dom
- vite
- tailwindcss
- @tanstack/react-query
- react-hook-form
- framer-motion
- jodit-react
- stripe
- sweetalert2
- jwt-decode
- axios
- react-router-dom
Follow these steps to get RedLife running on your local machine:
- Clone the repository:
git clone https://github.com/SR-iMrAN/RedLife.git
Navigate to the project directory:
**cd redlife-frontend**
Install dependencies:
npm install
Start the development server:
npm run dev
Open your browser and visit:
http://localhost:3000 (Might be different in your case)
---
## π
βββ ββ ββ βββββββββ βββββββ ββ βββ βββ β ββββββββ βββ ββ
βββββββββββ βββ βββ βββ βββ βββββββββ βββ βββββ βββ βββ βββ βββ βββ βββ
ββββββββ βββ βββ βββ βββ βββ βββ βββββββ βββββββββ βββ βββ βββ βββ
βββ β βββββββββββββ βββ βββ βββ βββ βββββββ βββββββββ βββ βββ βββ βββ
βββ βββββββββββββ ββββββββββββ βββ βββ ββββββββ βββ βββ βββ βββ βββ βββ
βββ βββ βββ βββ βββ βββ βββ βββββββ βββ βββ βββ βββ βββ βββ
βββ βββ βββ βββ βββ βββ βββ βββ βββββ βββ βββ βββ βββ βββ βββ
ββββββ βββ ββ βββ ββ ββ ββ βββ βββ βββββββ ββββββββ βββββββββ
β