count the glasses, not the app.
this is a counter. that is the whole thing — a number that goes up when you tap it and resets overnight.
the reason it is worth making rather than installing is that every water app has decided this needs an account, a streak, a paywall and a push notification at three in the afternoon.
ask for the counter. it takes one message, it ends at a url, and it is on your home screen a minute later.
the smallest useful page here.
01 / what it isthere is nothing clever about counting to eight. the value is entirely in how little friction there is between wanting to record a glass and having recorded it — one tap, no unlock-and-find-the-app, no account, no ad.
it is also the cheapest possible demonstration of the whole idea. if you have never asked an assistant to build you software, this takes a minute and produces something you will genuinely use tomorrow.
- one big tap target that adds a glass
- an undo, because you will double-tap
- your own target and your own glass size
- an automatic reset at midnight, keeping yesterday
- a week at a glance underneath
- what it records
- how many glasses today, and the last week
- where that goes
- localStorage in one browser. nothing leaves the device
- reminders
- none. a web page cannot send notifications, and this one does not claim to
- changing it
- different target, different glass size, one sentence and a republish
see one in action.
02 / exampleeight glasses as eight shapes that fill up, and a week underneath
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 prompta 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.
Build me a water tracker as a single web page. Keep it extremely simple.
Ask me first:
- My daily target and what a "glass" means to me — a count, millilitres, or ounces.
- Whether I want anything beyond today, such as the past week.
Do not add anything I did not ask for. Do not invent a hydration target for me.
WHAT IT DOES
- One large tap target adds a glass. It should be the biggest thing on the page and hittable without looking.
- Show progress against my target as both a shape that fills and a plain number, so it reads either way.
- An undo button, positioned so I will not hit it by accident but can find it instantly. Double-tapping is the most common mistake this page will see.
- Reset automatically at local midnight, and keep yesterday's total rather than discarding it.
- If I asked for it, a small week view: seven days, seven numbers.
- Let me change the target and glass size in the page without republishing.
DESIGN
- One screen, no scrolling, no menu, no settings page deeper than a single row of controls.
- Works one-handed, works at a glance, works in a bright kitchen.
- No celebration animation, no streak, no badge for hitting the target.
BE HONEST ON THE PAGE
- Note that the count is stored in this browser only.
- Do not claim reminders or notifications. A published page cannot send them, and saying it can is the one thing that would make this page dishonest.
- Do not give hydration or medical advice, and do not tell me a target is healthy.
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="water-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.give it a url.
04 / publishing ithow 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 only works if it is one tap from your lock screen. claim the page, give it a two-word slug, and add it to your home screen — otherwise you will simply never open it.
a counter that vanishes overnight is a joke about itself.
05 / keeping it aroundgenuinely fine for today: publish it, use it, see whether you like it. it stops serving 24 hours later, with a 7-day recovery window behind that.
claimed, it is permanent and short-addressed, which is all this page needs to be useful for years.
- custom url
- short enough to type is the only requirement, and it is the one that decides whether this gets used.
- keep it around
- an anonymous page expires in 24 hours, which for a daily counter means roughly one day of usefulness.
- stable updates
- change the target or the glass size later without the home-screen icon breaking.
questions.
06 / questionscan it remind me to drink?
no. a web page cannot send you a notification, and this one will not claim to. set a repeating alarm on your phone if you want nagging — the page is just where the count goes.
does it reset itself?
yes, at local midnight, and it keeps yesterday rather than throwing it away. that behaviour is in the prompt because it is the one bit of logic worth getting right.
why not use an app?
because the app for this is a counter surrounded by an account, a subscription prompt and an ad. if you like one of them, use it. this is a minute of work and has neither.
does my phone and my laptop share the count?
no. each browser counts separately, which for a water tracker is usually fine — pick your phone and stay there.