A to-do list where every task is a fish
Fish Tank To-Do is a free, local-first to-do app. There's no list on the main screen — the whole interface is an aquarium, and every task you add swims in it until it's done.
How it works
Add a task and a fish joins the tank. Finish it and the tank gets fed — food scatters, the shoal quickens for a moment, and the fish that was waiting settles in. Nothing about the tank is decoration layered on top of a list; the tank is the list.
If-then tasks
Some tasks shouldn't nag you before they're relevant. An if-then task — "if it rains, then bring in the washing" — waits inside a bubble until its condition is met, instead of sitting in your face from the moment you write it down.
Guilty pleasures, priced in pearls
Guilty pleasures are treats: the things you want to let yourself have, but only after you've earned them. They're exotic fish cruising below the waterline, dim until you can afford them. Every task you finish drops a pearl, and pearls are a running balance — save across days for something bigger, the way the mechanic is meant to work.
Koi, for the days you clear
Clear every task on a day — at least one task, all of them done — and a koi joins the tank for good. It's not a streak that resets if you slip; it's a record of the days you actually cleared.
Local-first, sign-in optional
The app works completely with no account and no network — your tasks live in your browser and never leave your device unless you choose otherwise. Signing in with Google adds sync across your devices; it's an addition, not a requirement. See the privacy policy for exactly what that syncs and what it doesn't.