Homebase
Our household's own Todoist, built test-first with a local AI model writing the screens.
- Role
- Product, architecture and an AI-assisted build pipeline
- Stack
- Kotlin · Ktor · PostgreSQL · React · TypeScript · Tailwind
- Status
- In daily use by our household
The real app, with made-up data and placeholder names.




The problem
Our family ran on a commercial to-do app. It couldn't feed our kitchen wall display, didn't know about meals or medications, and kept our lists on someone else's server.
I wanted one place for tasks, shopping, chores, the meal plan and medication doses, shared by the household and shown on the wall, and a way to build it quickly without giving up on quality.
What I built
How it works
The app itself is a straightforward three-tier system. What is unusual is how the screens get built: each one is a small step whose test is written first, and a local AI model writes the code until that test passes.
The app
- Material-style shell
- Live updates
- Households, lists, tasks
- Meals and medications
- Todoist-compatible API
- Daily backups, kept 14 days
How each screen gets built
- Proven against a throwaway implementation first
- Writes the screen
- Cannot edit the test
- Pass or fail, nothing in between
- Look at it, mark it done
Key decisions
- The test is the specEvery step ships with its test, proven against a working implementation before it is handed over. The model may never edit the test, so a passing step means the screen really does what was asked.
- Mistakes become rulesEach new kind of mistake the model makes becomes one line in the conventions file, so it does not make it again.
- Compatible on day oneSpeaking the Todoist API meant imports, scripts and habits carried over, instead of asking the family to start from scratch.
- Walls get their own keysEach wall display authenticates with its own key against a separate wall API, not with a family member's login.
- Boring to runOne Docker Compose file on a home server, a health check, and daily backups kept for two weeks, with restore steps written down.
Where it stands
Today
In daily use by our household on phones, laptops and the wall. The server has 66 tests across 14 files.
Next
More wall plugins and the remaining screens, one tested step at a time.