htmlsharechecking
/ uses · family & home · earned, spent, owed

pocket money, properly counted.

pocket money runs on trust and terrible arithmetic. somebody remembers being owed three weeks, somebody else remembers paying last sunday, and the ledger lives nowhere.

the banking apps aimed at children solve this by issuing a card, taking a monthly fee, and onboarding a nine-year-old into a financial product.

a page does the ledger part without any of that: what was earned, what was spent, what is owed, visible to everyone and owned by you.

what you make
a pocket-money ledger per child
where the data lives
the browser you keep it on. pick one
what it is not
a bank, a card, or anything that holds money

a ledger, not a bank.

01 / what it is

no money moves here. this is a record of what was agreed, earned and spent, which is precisely the part that keeps getting lost. the cash, the card or the jar is still yours to manage however you already do.

the reason to build it rather than install something is that children’s finance apps are financial products with fees and accounts attached, and what you wanted was a shared number that both of you can look at.

  • a balance per child, large and first
  • the regular weekly or monthly amount, added automatically by date
  • extra jobs and what they were worth
  • spending, logged as it happens
  • a saving-up goal, with how far off it is
  • export and import as json
what it records
regular amounts, extras earned, spending, and the running balance
where that goes
localStorage in one browser. not synced to a child’s phone
the regular amount
added by date, so a missed week still counts
what it is not
a payment product. no money is held, moved or represented as held

see one in action.

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

two children, weekly amounts, extra jobs, and a saving-up goal each

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 pocket money tracker as a single web page.

Ask me first:
- The children's names and what each one gets, and how often.
- Whether extra jobs can be earned, and typical amounts.
- Whether they are saving up for anything specific.
- The currency, and whether to track spending as well as earning.

Build from my answers. Do not invent amounts, jobs, or a savings target.

WHAT IT DOES

- For each child, the current balance is the largest thing on their section. That is the number everyone opens this for.
- The regular amount is added automatically based on the date, so skipping a week does not mean it never happened. Show when it was last added.
- Log an extra job with what it was and what it was worth, in two taps.
- Log spending the same way, with what it was spent on.
- A running history per child, in date order, that adds up to the balance. It has to be checkable — a child who thinks the number is wrong should be able to see why it is not.
- If they are saving for something: the target, how far off, and nothing that guilts them about spending.

DESIGN

- Readable by a child. Plain words, big numbers, no financial jargon.
- Works on a tablet or a laptop in the kitchen.
- Neutral about spending. No frowning faces, no "you could have saved this".

BE HONEST ON THE PAGE

- Say this is a record only and that no actual money is held or moved by the page.
- Say the ledger is stored in this browser, so it should live on one family device — a child opening the same url elsewhere will see an empty page rather than their balance.

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="allowance-tracker">

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
let the regular amount accrue by date rather than by someone clicking. the entire failure mode of a paper version is the weeks nobody recorded.
make the history checkable. a child who can see how the balance was reached will argue with the entries rather than with you, which is progress.
agree out loud that the family tablet is the ledger. a balance on a child’s own phone is a different balance, and that is a bad surprise.

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
this is a record two people refer to and occasionally disagree about, so it has to be at one address that does not move. claim it and keep it on the family device.

the ledger is only useful if it is the same ledger next month.

05 / keeping it around
anonymous
24h

fine to try the layout. the page stops serving 24 hours after publishing, with a 7-day recovery window, and the balances live in the browser rather than the page.

keep it around
a ledger that expires in 24 hours resolves no dispute about last month.
custom url
everyone in the house needs to be able to find it, including the people who will not use bookmarks.
stable updates
amounts change as children get older. the page changes, the address does not.

questions.

06 / questions
does it hold real money?

no. it is a record of what was earned, spent and is owed. no card, no account, no balance held anywhere — the actual money stays however you handle it now, and the page says so.

can my child check their balance on their own phone?

they can open the page, but they will see an empty ledger — storage is per browser. the honest setup is one family device holding the record, which is also the one that avoids two versions of the truth.

is it safe for a child to use?

there is no account, no signup and nothing collected — it is a page. it is public to anyone with the url though, so keep surnames and anything identifying out of it.

what if we get the sums wrong?

edit the entries; the balance is derived from them rather than typed, so correcting a mistake fixes the total. that is why the prompt asks for a checkable history rather than just a number.