PRD-001: Grocery Management
| Field | Value |
| ID | PRD-001 |
| Title | Grocery Management |
| Status | Draft |
| Owner | Loryth Team |
| Created | 2026-02-18 |
1. Problem Statement
Managing meals and groceries involves multiple disconnected steps: finding recipes, checking what's in the pantry, creating a shopping list, going to the store, and tracking what was bought. Most tools handle only one piece — a recipe app here, a shopping list there — forcing users to manually bridge the gaps. This creates cognitive overhead, leads to forgotten ingredients, duplicate purchases, and food waste from items expiring unnoticed.
Loryth's grocery service solves this by providing an end-to-end flow from ingredient catalog through recipes, meal planning, shopping trips, and inventory tracking — all connected.
2. Target Personas
| Persona | Priority | Relevance |
| Mindful Planner | Primary | Plans meals intentionally, wants healthy eating on a budget |
| Household Coordinator | Primary | Manages family grocery shopping, needs shared lists |
| Self-Hosting Tinkerer | Secondary | Wants automation — trip completion updating inventory and wallet |
3. User Stories
4. Functional Requirements
| ID | Requirement | Priority |
| FR-1 | CRUD operations for ingredients with name, category, and uniqueness validation | Must |
| FR-2 | CRUD operations for recipes with ingredient list and quantities | Must |
| FR-3 | Shopping trip creation with items from meal plans or manual entry | Must |
| FR-4 | Shopping trip completion creates inventory batches (FIFO) and logs ACQUIRED activity | Must |
| FR-5 | Inventory view showing current quantities, batch dates, and expiry warnings | Should |
| FR-6 | Cookability check comparing recipe requirements against active inventory | Should |
| FR-7 | Meal plan calendar assigning recipes to dates with consolidated shopping list generation | Should |
| FR-8 | Product catalog linking ingredients to retailer-specific products | Could |
| FR-9 | Cook recipe action consuming from oldest batches and logging COOKED activity | Should |
5. Non-Functional Requirements
- Shopping trip check-off must work on mobile with touch-optimized interactions
- Inventory updates from trip completion must be atomic (all-or-nothing)
- Ingredient search must return results in under 200ms for catalogs up to 1,000 items
6. Acceptance Criteria
7. Out of Scope
- Nutritional tracking and calorie counting
- Integration with external recipe databases or APIs
- Barcode scanning for product identification
- Multi-store price comparison
8. Traceability
9. Open Questions
- Should meal plans support recurring weekly templates?
- How should inventory quantities handle unit conversions (e.g., grams vs. kilograms)?
- Should shopping trip completion trigger a wallet transaction automatically (cross-service)?
10. Changelog
| Date | Change |
| 2026-02-18 | Initial version |