This project is an innovative backend-only Personalized Health and Wellness Recommendation System developed using Java and various technologies. It leverages a microservices architecture, Spring Boot, Java Persistence API (JPA), and more to provide users with tailored health and wellness recommendations, progress tracking, community engagement, nutrition management etc.
- Microservices Architecture:
- Ensures modularity and scalability through microservices.
- Spring Boot:
- Serves as the foundational framework for backend services.
- JPA (Java Persistence API):
- Facilitates data persistence and interaction with a relational database.
- Manages entities for user profiles, health data, recommendations, feedback, and community interactions.
- API Gateway:
- Centralizes request routing, security, and authentication.
- Discovery Server:
- Manages service registration and discovery for dynamic scaling and load balancing.
- Authentication Service:
- Handles user registration, login, and session management.
- Ensures secure user authentication and access token generation.
- User registration, login, and profile management.
- Management of personal health data.
- Personalized diet, exercise, mental health, and sleep recommendations.
- Submission of feedback on recommendations.
- Tracking health and wellness progress.
- Viewing insights based on progress data.
- Configuration of notification preferences.
- Sending personalized recommendations via notifications.
- Creation or joining of wellness groups.
- Sharing achievements and wellness updates.
- Interactions like liking, commenting, and following other users' posts.
- Searching for foods and recipes.
- Retrieving nutritional facts for specific foods.
- Receiving dietary recommendations.
- Accessing mental health exercises.
- Logging and tracking mood data.
- Receiving mental health recommendations.
- Viewing user feedback and satisfaction.
- Monitoring user progress and trends.
- Making data-driven decisions to improve recommendations.
For detailed API documentation, please refer to our API Documentation.
Special thanks to the following contributors who have helped make this project possible:
- Abu Taeb Nuri (@Nuri6336)
- Omar Faruk Pial (@omarFarukPialBJIT)
- Shadril Hassan Shifat (@shadril-bjit) (@shadril238)
- Sirajam Munira (@munira-bjit)