Weekly Meal Planner — organize lunches and dinners

Deciding what to cook every day is one of those small mental chores of the week, especially when you're cooking for the whole family. Here you plan lunch and dinner for every day in one place: the menu stays saved on your device, ready to check while you're at the grocery store or opening the fridge at dinner time.

▶ Use this app

meal plannerweekly menumealsfamilyorganization

What it records

  • Day...
  • Meal...
  • What you're cooking, e.g. Pesto pasta

How it works

This is a Reactive app: a plain text document that your browser turns into a working app — forms, live data, tables, statistics and even charts, with nothing to install or configure.

  1. Use it right away. Hit “Use this app”: it opens right in your browser, ready to go, with data saved only on your device.
  2. Your data stays yours. Everything is stored locally on your device, kept separate for each app: no account, no server, nothing to set up.
  3. Make it your own. The text below is the entire app: copy it, tweak fields, views and words, and your changes become interactive instantly.
  4. Share it as a file. An app is a simple file: save it, export it or share it with a link; and with encrypted collaboration several people edit the same data in real time.
The app’s source
# 🍱 Weekly Meal Planner

Deciding what to cook every day is one of those small mental chores of the
week, especially when you're cooking for the whole family. Here you plan
lunch and dinner for every day in one place: the menu stays saved on your
device, ready to check while you're at the grocery store or opening the
fridge at dinner time.

::::form{path="plan" id="fpi"}
:::select{form="fpi" field="day" placeholder="Day..." required="true"}
- Monday
- Tuesday
- Wednesday
- Thursday
- Friday
- Saturday
- Sunday
:::
:::select{form="fpi" field="meal" placeholder="Meal..." required="true"}
- Lunch
- Dinner
:::
::input{form="fpi" field="dish" placeholder="What you're cooking, e.g. Pesto pasta" required="true"}
::add-form{form="fpi" path="plan" label="Add to plan"}
::::

## This week's menu

:::group-by{path="plan" field="day" as="list"}
{meal}: {dish}
:::

## Manage entries

:::table{path="plan" headers="Day,Meal,Dish" deletable="true" editform="fpi"}
{day} | {meal} | {dish}
:::

Update the plan at the start of the week, all in one go: by the time you
shop for groceries you already know exactly what to buy, and at dinner all
that's left is to open the fridge and follow the menu.