A full-stack web application designed to help people build a consistent, healthy blood donation habit. Track your donation journey, monitor health readiness, connect with the community, and find nearby donation centers.
https://rakta-frontend.onrender.com
- Log blood donations with date, type, and location
- View complete donation history
- Real-time eligibility calculator (56-day waiting period)
- Countdown timer to next eligible donation
- Daily health logs (sleep hours, feeling status)
- Advanced metrics integration (HRV, resting heart rate, training load)
- Readiness score calculation
- Wearable device sync (Apple Health, Garmin, Google Fit)
- Public activity feed with donation posts
- Follow/unfollow other donors
- Like and engage with posts
- User profiles with badges and stats
- Achievement badges for milestones
- Donation streaks
- Community recognition
- Browse nearby donation locations
- Interactive map view
- Location details and contact information
- Spring Boot 4.0 with Java 17
- PostgreSQL database
- JWT authentication with Spring Security
- Flyway database migrations
- Spring Data JPA with Hibernate
- Next.js 16 with React 19
- TypeScript
- Tailwind CSS with Shadcn UI components
- Radix UI primitives
- Framer Motion animations
- Java 17+
- Node.js 18+
- PostgreSQL 12+ (or use H2 for development)
cd backend
./mvnw spring-boot:runRuns on http://localhost:8080
cd frontend
npm install
npm run devRuns on http://localhost:3000
JWT_SECRET=your-secret-key
SPRING_DATASOURCE_URL=jdbc:postgresql://localhost:5432/rakta
SPRING_DATASOURCE_USERNAME=your_username
SPRING_DATASOURCE_PASSWORD=your_passwordNEXT_PUBLIC_API_URL=http://localhost:8080/apiDeployed on Render with:
- Backend: Docker container with Spring Boot
- Frontend: Static site with Next.js
- Database: PostgreSQL (Render managed)
Built to support blood donors and save lives.