Rarecips is a progressive web application designed to help users discover, share, and manage unique and rare recipes from around the world. The platform allows users to browse, upload, review, and save recipes, fostering a community of culinary enthusiasts.
NOTE: The project is currently in the requirements and design phase: only functional and technical objectives have been defined, thus implementation has not started yet.
The platform provides users full control over the content they're allowed to see, upload and modify.
- User registration and authentication
- User profile management
- Stat tracking
- User and content moderation
- Recipe browsing with search and filtering
- Recipe visualization
- Recipe sharing through media and format enriched text powered uploading
- Recipe reviewing and rating
- Recipe saving and bookmarking
- Health report feedbacking
Modern, scalable, maintainable and continous-deployment supported architecture using the newest technologies and best practices.
- Frontend: Angular + Tailwind CSS
- Backend: Spring Boot (Java)
- Database: MySQL
- RESTful API design
- Dockerized deployment
- CI/CD with GitHub Actions
- Automated testing (unit/integration)
- Websocket implementation
- Cloud deployment
- Static analysis
The project will follow an agile, iterative, and incremental development process:
- Phase 1 (15/07/2025 - 15/09/2025): Requirement and feature definition (Objectives, Detailed Features)
- Phase 2 (15/09/2025 - 15/10/2025): Technology and tool configuration with quality controls
- Phase 3 (15/10/2025 - 15/12/2025): Basic features, application dockerization
- Phase 4 (15/12/2025 - 01/03/2026): Medium features
- Phase 5 (01/03/2026 - 15/04/2026): Intricate features
- Phase 6 (15/04/2026 - 15/05/2026): Final report
- Phase 7 (15/05/2026 - 15/06/2026): Project presentation
- User registration and authentication (All users)
- Recipe browsing with search and filtering (All users)
- Recipe visualization (All users)
- Recipe sharing through media and format enriched text powered uploading (Registered users)
- Recipe reviewing and rating (Registered users)
- User profile management (Registered users)
- Recipe saving and bookmarking (Registered users)
- Health report feedbacking (Registered users)
- Stat tracking (Registered users)
- User and content moderation (Admins)
- Analytics dashboard viewing (Admins)
- Personalized recommendations (Registered users)
The main entry point of the application, showcasing featured recipes, collections, etc. and allowing users to explore the platform.
- Login
- Signup
- Admin
- Ingredients
- Health
- Explore
- Profile
- Recipe
User login screen with email/username and password authentication.
- Signup
- Landing
User registration screen for creating new accounts with profile information.
- Login
Browse and search through all available recipes, users, ingredients and collections with filtering capabilities.
- Landing
- Login
- Signup
- Admin
- Ingredients
- Health
- Profile
- Recipe
Detailed view of individual recipes showing ingredients, instructions, and user reviews.
- Login
- Signup
- Admin
- Ingredients
- Health
- Explore
- Profile
Create and edit recipes with rich text formatting and media upload capabilities.
- Login
- Signup
- Admin
- Ingredients
- Health
- Explore
- Profile
Display user information, statistics, and personal recipe collections.
- Login
- Signup
- Admin
- Ingredients
- Health
- Explore
- Recipe
Edit user profile information, preferences, and account settings.
- Login
- Signup
- Admin
- Ingredients
- Health
- Explore
- Profile
Manage and browse ingredient database with nutritional information.
- Login
- Signup
- Admin
- Health
- Explore
- Profile
View personalized health and nutrition reports based on recipe consumption.
- Login
- Signup
- Admin
- Ingredients
- Explore
- Profile
Administrative dashboard for content moderation and system analytics (Admin users only).
- Login
- Signup
- Admin
- Ingredients
- Health
- Explore
- Profile
Custom error page for handling various application errors gracefully.
- Login
- Signup
- Admin
- Ingredients
- Health
- Explore
- Profile
- User: username, display name, bio, profile image, email, password, role, creation date, last online date
- Recipe: id, label, image, people, ingredients, difficulty, dish types, meal types, cuisine type, diet labels, health labels, cautions, time, weight, calories, average rating, author, reviews, creation date, modification date
- Review: id, recipe, rating, comment, author, creation date, modification date
- Ingredient id, description, quantity, measure, weight
- Report id, user, details
- Unregistered: Browse, view recipes
- Registered: Unregistered user permissions, recipe CRUD, profile CRUD, report querying, user stats
- Admin: Registered user permissions, content and user moderation, system analytics viewing
- Recipes: Multiple images per recipe, with images in ingredients
- Users: Avatar image
- Registered personal stats: Bar and pie charts for own user's content and profile
- Admin dashboard: Bar and pie charts for recipe stats, user activity
- Docker for deployment
- GitHub Actions for CI/CD
- ...
- Personalized recipe recommendations based on user preferences and activity
- Automated testing
- Native Image Packaging
- Cloud Deployment (app, database)
- Continuous Deployment
- WebSockets as Rest-complementary communication technology
- Responsive mobile design
This application is developed as part of the Final Degree Project (TFG) for the Computer Engineering degree at ETSII, Universidad Rey Juan Carlos.
- Student: Blas Vita Ramos ([email protected])
- Supervisor: Michel Maes Bermejo ([email protected])