Weekly Meal Planner
Turn your pantry and its expiry dates into a 7-day dinner plan and a shopping list.
Try an example: Use up spinach, eggs and chicken this week · Vegan, 5 days, max 30 minutes
How it works
List what is in your fridge and cupboards (with quantities and best-before dates) and your preferences (vegetarian, vegan, pescatarian, maximum cooking time, ingredients to avoid). The planner picks one dinner per day from about 60 simple home-cooking recipes, using food that expires soonest first, and adds up a shopping list of everything still missing.
- Recipes come from a bundled editorial dataset of about 60 simple home-cooking dinners with ingredient quantities, cooking time and diet. Quantities are scaled linearly to the number of people.
- Recipes are filtered by diet (vegan ⊂ vegetarian ⊂ pescatarian ⊂ everything), maximum cooking time and the ingredients to avoid.
- Pantry names are matched to recipe ingredients after normalising plurals and common synonyms (e.g. eggs → egg, courgette → zucchini, spaghetti → pasta). kg and l are converted to g and ml.
- Day by day, every remaining recipe gets a score: for each ingredient, the share covered by the pantry × an urgency weight (expires within 1 day: 6, 3 days: 4, 7 days: 2, later: 1, no date: 0.5) × 10, plus the share of that pantry item used up × urgency × 5, minus 3 for every ingredient that must be bought. The highest score wins (ties: dataset order); the pantry is then reduced by what the recipe uses.
- Items past their best-before date on the cooking day are not used. A recipe is repeated only when every eligible recipe has already been planned.
- The shopping list adds up all missing amounts per ingredient (pieces rounded up to whole pieces). Salt, pepper, cooking oil and water are assumed to be at home.
Sources
- usefulweb.site recipe dataset (editorial, generic home cooking)
For scripts and AI agents
- JSON API:
POST https://weeklymealplanner.usefulweb.site/api/v1/calculate(same calculation as this page) - Interface description: OpenAPI 3.1 · AI guide: llms.txt
- MCP server (Streamable HTTP):
https://weeklymealplanner.usefulweb.site/mcp· tool nameweekly_meal_planner
Example request
curl -s -X POST https://weeklymealplanner.usefulweb.site/api/v1/calculate \
-H 'content-type: application/json' \
-d '{"startDate":"2026-10-19","days":7,"servings":2,"diet":"any","maxMinutes":45,"pantry":[{"item":"Spinach","quantity":250,"unit":"g","expires":"2026-10-20"},{"item":"Eggs","quantity":6,"unit":"pcs","expires":"2026-10-28"},{"item":"Chicken breast","quantity":300,"unit":"g","expires":"2026-10-21"},{"item":"Rice","quantity":1,"unit":"kg"},{"item":"Onions","quantity":4,"unit":"pcs"},{"item":"Canned tomatoes","quantity":800,"unit":"g"},{"item":"Feta","quantity":200,"unit":"g","expires":"2026-10-23"},{"item":"Pasta","quantity":500,"unit":"g"}]}'