htmlsharechecking
/ uses · food · seven decisions, made on sunday

decide once, eat all week.

the hard part of dinner is not cooking it. it is deciding, at six in the evening, with nothing thawed and nobody agreeing.

meal planning fixes that, and meal planning apps make it a chore of its own: recipe imports, nutrition databases, a subscription, and a library of meals nobody in your house will eat.

the version that works is a page holding the twenty things you actually cook, a week to drop them into, and a shopping list that falls out of the result.

what you make
a week grid plus your own bank of meals
where the data lives
your browser, on one device
what comes out
the shopping list, from what you planned

a week grid and a meal bank.

01 / what it is

planning meals is a two-part problem and most tools only solve the glamorous half. the grid — seven slots, fill them in — is trivial. the part that makes it work is a bank of meals specific to your household, with the ingredients attached, so choosing is picking rather than remembering.

because you describe the bank rather than importing a database, everything in it is something someone in your house will eat. that is the difference between a plan you follow and a plan you make on sunday and abandon on tuesday.

  • a bank of the meals your household actually eats
  • a week you fill by picking from it, not by typing
  • ingredients per meal, so the shopping list builds itself
  • a note of what you ate recently, so the rotation does not collapse to four things
  • somewhere for the takeaway night to be an honest entry
  • export and import as json
what it holds
your meal bank with ingredients, and the current week’s plan
where that goes
localStorage in one browser. the other adult in the house sees their own copy
the shopping list
generated from the meals you planned, editable before you shop
what it does not do
nutrition, recipe import, or telling you what to eat

see one in action.

02 / example
htmlshare.net/p/…
screen capture · silent loop
video coming soon

a week of dinners chosen from a bank of twenty-two household regulars

the live example is still being built — the prompt below is the one it was made with.

copy this, then make it yours.

03 / starting prompt

a starting point, not a template — the point of an agent is that the result is yours. change the sections to match what you want, and remove anything you don’t need.

starting prompt · paste into your ai
Build me a weekly meal planner as a single web page.

Ask me first:
- The meals my household actually cooks, as many as I can list. This is the most important answer.
- Roughly what ingredients each one needs, if I know them — I can fill gaps later.
- How many people I am cooking for, and whether that changes during the week.
- Anything nobody here will eat.
- Whether I plan dinners only, or other meals too.

Build from my answers. Do not invent recipes, do not add meals I did not name, and do not import anything from anywhere.

WHAT IT DOES

- A week grid: the days, each with a slot per meal I plan. Assigning a meal means picking from my bank, not typing it again.
- A meal bank listing everything I cook, with its ingredients. I can add to it, edit it, and add a meal straight into the week and into the bank in one action.
- A shopping list generated from the week's plan: every ingredient from every planned meal, combined where the same thing appears twice, grouped sensibly, and editable before I shop — I will already have half of it.
- A note of when each meal was last planned, so I can see the rotation collapsing before it does.
- Space for honest entries: leftovers, takeaway, "out". These are part of a real week and should not be missing from the page.
- Let me clear the week and start the next one without losing the bank.

DESIGN

- The week is the page on a laptop; on a phone, one day at a time with the week reachable.
- Picking a meal should be two taps. If it takes a form, this page will not survive a month.
- Plain and quick to scan. This gets read at a counter while something is boiling.

BE HONEST ON THE PAGE

- Say the plan and the meal bank are stored in this browser only, so another person in the house opening the same url sees their own empty copy.
- Do not add nutrition information, calorie counts or dietary advice.
- Do not claim to import recipes from websites. It cannot.

STORING THE DATA

- Save everything to localStorage in the browser, automatically, as I go. No
  accounts, no login, no server call.
- On the page, say plainly that data lives in this browser only and does not
  sync to other devices. Do not bury it.
- Give me an "export" button that copies or downloads everything as JSON, and an
  "import" that reads the same JSON back. That is the only way my data can move
  between devices, so it is not optional.
- Never lose what I have already entered. If the stored data is from an older
  version of the page, read what you can rather than throwing it away.

DELIVERY

- Produce one self-contained HTML file. Inline the CSS and JavaScript.
- No build step, no server, no framework, no package install, no external
  requests at runtime.
- Mobile-first and responsive; it has to be usable one-handed on a phone and
  still look right on a laptop.
- Accessible: semantic HTML, real contrast, visible keyboard focus, labelled
  controls, touch targets big enough to hit, and respect reduced-motion.
- Use placeholders where information is missing. Do not invent facts, numbers,
  names, dates, prices, or results I have not given you.
- Before you call it finished, use it yourself: enter real-looking data, reload
  the page, and confirm nothing is lost or mangled.

PUBLISHING

Publish the finished page to HTMLShare and give me the link.

Use exactly one of the two paths below, preferring the first. Make the call
directly. Do not route it through a code sandbox, container, or computer-use
session — that is where the request gets blocked, and it is never necessary.

1. An HTMLShare integration or connector, if you have one configured.
   The page is permanent and owned by my account. Report the url and the
   siteId. There is no claimUrl or manageToken on this path — do not go
   looking for one, and do not switch paths in order to produce one.

2. Otherwise, publish anonymously over REST. No account, key, or signup is
   needed:

    POST https://api.htmlshare.net/v1/publish
    content-type: application/json

    {"html": "<!doctype html> ... "}

   The reference is https://htmlshare.net/docs and, for the full schema,
   https://api.htmlshare.net/openapi.json

   Report these from the response, in your reply and never inside the page:
     url          the public page
     claimUrl     a private link that is mine alone. opening it is how I keep
                  the page past its 24-hour expiry, or set an email reminder
                  before it goes. it carries the manage token, so it must
                  never appear in the published HTML or anywhere a visitor
                  could see it.
     manageToken  the only thing that can edit or delete this page later. it is
                  returned once and never again, so tell me what it is.

Tell me which of the two you used. If the path you reach for first is
unavailable in your environment, say so and tell me what you are switching to
before you publish — a permanent page on my account and a 24-hour anonymous
page are different things, and which one I get is my decision, not a detail.

If I ask for a change afterwards, update the existing page instead of
publishing again, so the URL I have already shared keeps working — through the
same integration on path 1, or with the manage token as an X-Manage-Token
header on path 2.

RECIPE MARKER

Include this tag in the <head>, exactly as written:

    <meta name="htmlshare-recipe" content="meal-planner">

It tells htmlshare which recipe the page came from, so the library can count
that this one was actually made. It carries nothing else.
works as-is inclaudechatgptcodexcursorgrok
adapting it
list twenty meals, not five.the bank is the product. spend the first message dredging up everything you cook, including the boring ones — those are the tuesday meals, and a planner without them is a fantasy.
include the takeaway night.a planner with no slot for "we are not cooking" gets abandoned the first week it is wrong. ask for it explicitly; most agents will leave it out.
let ingredients be approximate.the shopping list is a reminder, not a bill of materials. "pasta, tin of tomatoes, the green stuff" is enough and much likelier to get filled in than exact quantities.

give it a url.

04 / publishing it

how you publish depends on how you’re working.

with an integration
if your assistant already has htmlshare connected — mcp or another supported integration — just ask it to publish the finished page and hand back the url. the page belongs to your account and is permanent. when you want a change, ask for an update to that same page rather than a new one.
with no integration
the prompt tells the assistant to post the html to the rest api instead, which needs no account and no key. it comes back with a live url you can open immediately, a private claim link, and a manage token. the claim link is how the page stops being temporary — keep it.
by hand
nothing stops you doing it yourself: have the assistant give you the html file and drop it on the htmlshare home page. same url, same page, one more step.
what matters here
the meal bank takes a few weeks to become genuinely yours and is the reason this page keeps working. claim it so that work has somewhere permanent to live.

the meal bank is worth more than any one week.

05 / keeping it around
anonymous
24h

fine for planning one week to see whether you like the shape. the page stops serving after 24 hours with a 7-day recovery window behind it.

keep it around
anonymous pages expire in 24 hours, which is shorter than one planning cycle.
custom url
this gets opened on a phone in a kitchen by someone not looking for it. a typeable address helps.
stable updates
the meal bank grows, the household changes, the page changes with it — at the same address.

questions.

06 / questions
can my partner see the plan?

they can open the url, but they will get their own empty copy — each browser stores separately and there is no shared state. what households usually do is keep the plan on one device and share the shopping list by screenshot or export.

can it import recipes from a website?

no. the page makes no outside requests. paste the recipe to your assistant and have it added to the meal bank properly — which also strips out the eight paragraphs before the ingredients.

does it do nutrition?

no, deliberately. this is about deciding what to cook, not about counting anything. if you want a food log, that is a different page and it still only adds up numbers you supply.

what if the week goes wrong?

change it. the plan is not a commitment and the page should not treat it as one — no adherence score, no completion percentage. swap tuesday for takeaway and move on.