Not a to-do list.
Most task apps are a long, flat list that grows faster than it shrinks. I wanted the opposite: a tree. Everything sits under something bigger, all the way up to a few targets that actually matter. If a task can’t find a place under one of them, that tells me something too.
The idea borrows from how goals and work are organized at a larger scale: objectives with results underneath, intent set at the top while the people closest to the work decide how to do it. Items applies that to one person’s list. Progress rolls up the tree, so a target shows how much of its work is done without me having to count.
Starting by hand.
I started Items on my own in October 2025, in plain JavaScript with no build step. I added things one stable point at a time: the tree, then adding, editing, and deleting items, then marking them done. I also wrote the specification myself, deciding what the app was for and, just as importantly, what it was not.
Then, a lot more capable.
Later, I brought AI into the work. It made Items far more capable than I could have managed alone, but it did not decide what Items should be. I set the direction, kept it narrow, and went around the loop many times: try it, use it, say what is wrong, try again. The specification stayed mine, and every change had to fit it.
That rigid direction mattered. With help that fast, it is easy to end up with an app that does a little of everything. Most of my effort went into saying no, and into checking that what I asked for was what I got.
Careful with what matters.
A task app is only useful if I trust it with my list. Items keeps everything in the browser, on my own devices. Every save keeps the previous version, and if something looks wrong, it stops and says so instead of quietly overwriting it. Backups can be encrypted with a password.
To use the same list on my phone and computer, Items syncs an encrypted copy through a small relay I run myself. The key stays with me, so the relay only ever holds data it cannot read. Each device has to be enrolled before it can sync at all.
Where it stands.
Items isn’t finished. The release is waiting on hands-on checks on real phones, which automated tests can’t replace. Screen reader testing comes after that. It’s built for me, and the source is private. This is a write-up, not an invitation to sign up.
Like the copper manifold, I could probably have found something close enough off the shelf. I wanted to build the one that fit.