
I've been meaning to do this for a while. My projects page had six entries with completely empty descriptions — just names and a "failed" badge sitting there with nothing to say for themselves. This week I went through all of them properly.
Writing the Honest History
The interesting thing about going back through old projects is that they stop feeling like failures. They start feeling like documentation. ColorFix, VideoFix, Shoots & Collabs, WordReps, Aussie Working Holiday Jobs, Tradie Receptionist — each one had a real idea behind it, a real build, and a real reason it stopped.
I wrote proper longDescription entries for all six. Not marketing copy — actual architecture notes. VideoFix was the original Uncaption before I rebuilt it in SwiftUI with broader language support. ColorFix was an Instagram template editor that pivoted to "Pixorama" branding before I shelved it. Tradie Receptionist was a full Stripe-billed AI receptionist at $65/month for Australian tradies, built on ShipFast, complete with a client booking portal, onboarding flow, and PostHog analytics. These deserve to be described properly.
I also added tech stacks and lastCommit dates to each entry. Seeing "last commit: Feb 2024" on Aussie Working Holiday Jobs is oddly satisfying — a timestamp rather than a judgment. It anchors the project in time instead of leaving it floating as a vague "didn't work out."
The six projects span Swift, Next.js, Supabase, Clerk, Tailwind, CocoaPods — a pretty honest cross-section of what I've been building with over the years, and a useful reference for myself when I'm deciding what to pick back up.
Screenshots and the Detail Pages
While I was in there, I added screenshot support to the project data model. Uncaption got four App Store screenshots pulled into the data layer — they've been live on the App Store for ages, I just hadn't surfaced them on the site. MyFoodJournal got three.
The project detail pages now render a screenshot gallery alongside the description and last-active date. Small changes to app/projects/[slug]/page.tsx, but they make the pages feel substantially more complete. A shelved project with screenshots actually feels like something that existed in the world, rather than a line item.
One small correction in the same batch: WordReps had its auth stack listed as Clerk in the original data, but it actually uses Supabase auth with Apple Sign-In. That's exactly the kind of thing you only catch when you're reading the actual commit history rather than writing from memory. The commit history is the source of truth.
Other Projects Active This Week
VideoApp, MyFoodJournal, and the sugar-app backend all had pushes this week. Each of those is in active development at the moment, and I'll cover them properly once the work settles into something worth describing. They're at the stage where things are changing fast enough that writing about it now would be premature.
The Thing About Documenting Failures
There's something clarifying about writing up the projects you didn't ship. It forces you to articulate what they were actually trying to do, rather than letting them sit as vague half-memories. The six I wrote up this week weren't failures of ambition — they were pivots, experiments, or projects that hit a specific wall at a specific moment for a specific reason. Writing that down matters.
The other thing I noticed: building these project pages with proper data makes the site feel like an honest portfolio rather than a highlight reel. You can see the full arc — what shipped, what stalled, what got rebuilt into something else. That's more interesting than a page full of polished wins, and it's more useful as a record of how my thinking has evolved.
Next week I'll have more on the active projects. The sugar-app work is picking up.