The task
Let customers choose meals, portions and preferences, while giving the kitchen an unambiguous order. A meal list alone is not enough: the system needs to preserve the chosen recipes, date, comments and order status.
The customer journey
Customers choose a prepared menu or build a plan of three to five dishes. They can change an available portion, add comments and see the actual total calories and macronutrients.
A review screen comes before submission. The My meal plans section shows orders by date, their contents and statuses. Pending edits are distinguished from the order already submitted.
The kitchen workspace
The admin panel covers customers, orders, dishes, prepared menus, data sources and settings. A daily summary shows what needs to be cooked.
After confirmation, the chef receives the order details in Telegram. Accept and Prepared actions update the status visible to the customer.
Data and important constraints
The catalogue is imported from Google Sheets. Recipes with different ingredients or portion weights remain separate variants, with links back to their sources.
Submitted orders store a snapshot of the selected recipes, so later catalogue edits do not rewrite them. Changes to accepted orders must be agreed with the kitchen. Duplicate submission of an unchanged order is blocked.
What this project demonstrates
The work connects a customer interface, administration, data import and Telegram events. It provides a complete workflow for both sides, including review and handling changes.

