Beginner · 2 weeks
Recipe Management API
Store recipes with ingredients (quantity, unit), steps, cuisine type, and prep time. Search by ingredient or cuisine. Users save favorite recipes. Scale ingredient quantities for different serving sizes.
Why this project
Ingredient lists with quantities exercise OneToMany and embedded value types. Scaling logic is a fun algorithm question.
Tech stack
Java 17Spring Boot 3Spring Data JPAPostgreSQL@Embeddable
Skills demonstrated
- Composite value types
- Collection mapping
- Business calculation
- Favorites feature
Interview talking points
- Ingredient as @Embeddable vs separate entity
- Scaling algorithm for serving size
- Search recipes containing an ingredient (JOIN query)
- Cascade delete rules for recipe ingredients
Problem statement
Store recipes with ingredients (quantity, unit), steps, cuisine type, and prep time. Search by ingredient or cuisine. Users save favorite recipes. Scale ingredient quantities for different serving sizes.