Meal Planner

Plan your weekly meals with multiple meal slots per day. Auto-generate shopping lists, save locally in your browser, and enjoy a clean print-friendly layout.

6 Apr – 12 Apr 2026
Monday 6 Apr
Breakfast
Lunch
Dinner
Snack
Tuesday 7 Apr
Breakfast
Lunch
Dinner
Snack
Wednesday 8 Apr
Breakfast
Lunch
Dinner
Snack
Thursday 9 Apr Today
Breakfast
Lunch
Dinner
Snack
Friday 10 Apr
Breakfast
Lunch
Dinner
Snack
Saturday 11 Apr
Breakfast
Lunch
Dinner
Snack
Sunday 12 Apr
Breakfast
Lunch
Dinner
Snack

How to Use the Meal Planner

1. Navigate to your week

Use the arrow buttons to move between weeks. Click Today to jump back to the current week instantly.

2. Add meals to each slot

Click the + button on any Breakfast, Lunch, Dinner, or Snack slot to add a meal. You can add multiple meals per slot.

3. Generate your shopping list

Switch to the Shopping List tab to see all planned meals as a deduplicated, printable checklist.

Frequently Asked Questions

Is the meal planner free to use?

Yes, completely free. No account or sign-up required. All data is stored locally in your browser using IndexedDB.

Will my meal plan be saved if I close the browser?

Yes. Your meals are saved in your browser's local storage (IndexedDB) and persist across sessions as long as you use the same browser and don't clear your site data.

How does the shopping list work?

The Shopping List tab automatically collects all unique meal names from the current week, deduplicates them, and displays them as a sorted checklist. You can check items off and print the list.

Can I plan meals for multiple weeks?

Yes. Each week is stored separately. Use the prev/next arrows to switch weeks — your plans remain intact for every week you've planned.

What meal slots are available per day?

Each day has four slots: Breakfast, Lunch, Dinner, and Snack. You can add as many individual meals as you like to each slot.

Can I print my shopping list?

Yes. On the Shopping List tab, click Print Shopping List. The navigation and sidebar are hidden automatically so only the list prints cleanly.