Build a plant watering tracker that shows what's thirsty when you open it
The useful part of a plant watering tracker is one list: which plants need water today. Everything else supports it. Anticode can build a houseplant tracker that keeps each plant's schedule and notes in your own browser and shows the due list the moment you open it. It can't buzz your phone when it's closed, so this page also covers how to live with that.
Why watering by the calendar goes wrong
Most plant losses at home come from too much water, not too little. A fixed "every Sunday" routine ignores that a fern in a bright bathroom dries out faster than a snake plant in a cool hallway, and that everything slows down in winter. A good tracker treats the interval as a starting guess per plant and lets you nudge it from what you see.
So instead of a single watering day, give each plant its own interval and a quick way to say "checked, still damp, ask me again in three days". That snooze is the feature people miss most in simple reminder lists.
What to record for each plant
| Field | Why it matters |
|---|---|
| Name and nickname | "Monstera, living room" tells two of the same species apart. |
| Spot and light | Bright, medium or low light explains why the same plant needs different care in two rooms. |
| Watering interval in days | Your own guess, adjusted over time. A separate winter interval is worth adding. |
| Last watered | Set with one tap. The due date follows from this and the interval. |
| Feeding interval | Fertiliser is usually less often than water; a second, slower counter. |
| Repotted and notes | A date and free text: "yellow lower leaves in March, moved away from radiator". |
| Photo | Optional. See the note on storage below before relying on it. |
The screens
- Due today. Opens first. Overdue plants at the top in a warning colour, then today's, then a short "coming up" list for the next three days. Each row has Watered and Snooze buttons.
- All plants. Cards grouped by room, with a small ring showing how far through its interval each plant is.
- Plant detail. The fields above, plus a watering history so you can see whether you've been drifting from the interval.
- Add a plant. Name, room, light and interval. Keep it to one short form; nobody wants to fill in a botanical record at the garden centre till.
Describing it to Anticode
Anticode builds apps like this as one program that runs in the browser, written by its model from your description. Give it your rooms, a few of your real plants and how you want reminders to feel:
"A plant care app for my flat. Rooms: living room, bedroom, bathroom, balcony. Each plant has a light level, a watering interval and a separate winter interval from November to February, and a feeding interval. The home screen lists overdue, due today and the next three days, with Watered and Snooze one, two or three days. Show a history per plant. Soft greens, large buttons, works one-handed on a phone."
After the first version, ask for changes in words: "add a mist reminder for the calathea", "sort due plants by room". Test the edge cases yourself: a plant watered twice in one day, an interval changed after the last watering, a plant you delete and add back.
Reminders: what the sandbox allows
Anticode apps run in a strict sandbox with no network, and they can't use notifications or other device permissions. A watering reminder app built here can't wake your phone at 8 a.m. It shows what's due the moment you open it, which works well if opening it becomes part of a routine, the same way a habit tracker depends on a daily check-in.
- Install it on your home screen (every published site can be installed as an app) so it's one tap away.
- Set one recurring alarm or calendar entry on your phone, say Sunday morning, that just says "check plants". The tracker does the per-plant thinking.
- Keep watering as one stop in the house, not something you remember plant by plant: open the app, work down the list, done.
Where the plant data lives
Your plants and their history are saved in the browser you use, on that device. Nothing goes to a server, which also means no sync: a partner using their own phone sees an empty tracker. If two people share the watering, one shared device (a tablet in the kitchen) is the honest arrangement.
Browser storage for an app like this is a few megabytes. Text records for even a large collection fit easily; photos don't, unless they're shrunk to small thumbnails. Ask for a photo picker that resizes images and test it with a dozen plants before you add fifty. Clearing site data or browsing in a private window empties the tracker, so ask for an export and import of your records as a file, and try a round trip before you trust it.
What it won't do
- No plant identification from a photo, and no camera access; there's no AI inside the app.
- No weather. It can't read rain or temperature for the balcony plants. Snooze them yourself after a wet week, or plan outdoor beds in a garden planner instead.
- No sensor readings from soil moisture meters.
- No species database. Care guidance comes from what you type in, or from sample text the model writes, which you should check against a reliable source.
Questions people ask
Can a plant watering tracker built here send me a notification?
No. It shows what's due when you open it. Pair it with one weekly alarm on your phone.
Can my household share it?
Each device keeps its own copy, so share one device or have one person own the watering.
Can I sell it as a plant care app?
You can publish it for others to use, and each visitor gets their own empty tracker in their browser. Accounts, sync and push reminders would need a different setup, such as the Next.js export developed further.