Roadmap Item: Release 0.5 — Nutrition & Preferences¶
Status¶
PROPOSED
Date: 2026-02-07
Changelog¶
| Date | Revision | Description | Author |
|---|---|---|---|
| 2026-02-07 | 1.0 | Initial version | @souperk |
Context¶
Users want to track nutritional information for ingredients and products, apply dietary constraints when planning meals and shopping (e.g., "avoid added sugar", allergen exclusions), and express brand preferences with fallback strategies. These capabilities are prerequisites for the external integration (v0.6) and recommendation (v0.7) releases.
Proposal¶
Overview¶
Nutrition facts for ingredients and products, dietary constraint system, and brand preferences with fallback strategies.
Goals¶
- Nutrition facts entity per ingredient/product (calories, macros, micronutrients per serving)
- Dietary constraints ("avoid sugar", "no gluten", allergen exclusions)
- Constraint application to recipe suggestions and shopping plan generation
- Brand preferences per ingredient ("prefer brand X for granola") with fallback (cheapest, any, skip)
Non-Goals¶
- Automated nutrition data import from external sources (v0.6)
- Price-based optimization (v0.6)
- AI-based dietary recommendations (v0.7)
Technical Details¶
Approach¶
NutritionFactsentity linked to ingredient or productDietaryConstraintentity with constraint type and parametersBrandPreferenceentity with ingredient, brand, priority, and fallback strategy- Constraint filtering integrated into recipe suggestions and plan generation
Dependencies¶
- v0.4 must be complete
- Recipe suggestions from v0.2, plan generation from v0.3
TDs¶
- TD-005: Nutrition & Preferences (planned)
Backwards Compatibility¶
- New entities and endpoints only
- Existing recipes and ingredients gain optional nutrition data
- Constraint filtering is additive; queries without constraints behave unchanged
Implementation Plan¶
Phase 1: Nutrition Facts¶
NutritionFactsentity + repository- CRUD endpoints
- Per-recipe nutrition aggregation
- Migration
Phase 2: Dietary Constraints¶
DietaryConstraintentity + repository- Constraint filtering in recipe suggestions
- Constraint filtering in plan generation
- Tests
Phase 3: Brand Preferences¶
BrandPreferenceentity + repository- CRUD endpoints
- Integration with shopping plan generation
- Tests
Open Questions¶
- What nutrition fields are required vs optional (full USDA set or simplified)?
- Should constraints support severity levels (strict avoidance vs preference)?
- How to handle brand preferences when the brand is unavailable at a retailer?
References¶
- TBD