Toolchain
What I build with, and why each one is here.
Not a badge wall. Every entry has a reason attached, because the interesting question isn't which tools someone uses. It's whether they can tell you why, and what they'd swap out.
Models & reasoning
What actually does the thinking. The rule is to use the cheapest model that clears the bar for the task, not the best one available.
Claude API
since 2025Drafting, extraction, agentic work
The most reliable at long, multi-step work that has to not drift. Where a job has twenty dependent steps, this is what I reach for.
Gemini
since 2025Classification, bulk processing
Cheap and fast enough to run over thousands of items. Used it to triage newsletters and resolve three thousand job addresses.
Open weights
since 2026Anything that must stay local
gpt-oss and Qwen run on hardware you own. A generation behind frontier, and completely adequate for drafting and document Q&A.
ElevenLabs
since 2025Speech
Voice interfaces where typing is the wrong input: field work, hands busy, driving between sites.
Building
Boring on purpose. Every tool here is one another engineer could pick up, which matters when you're one person and clients need continuity.
Next.js
since 2025Every application
One framework for the interface and the server. Pages render as static HTML where they can, which is why these sites load instantly.
React
since 2024Interface
Not a preference so much as the default that everything else assumes. Fighting it costs more than it saves.
TypeScript
since 2025All of it
Catches the class of mistake that otherwise reaches a client's screen. Non-negotiable on anything someone else relies on.
Supabase
since 2025Database & auth
Postgres with the tedious parts done. Row-level security means access rules live in the database rather than in application code you can forget.
Python
since 2024Data work
Anything involving a few thousand rows, a geocoder, or a training run. The right tool for work that isn't a web page.
Plumbing & delivery
The unglamorous layer that decides whether something still works in six months.
n8n
since 2025Automation
Self-hostable, so the same workflow runs in someone's office or in the cloud without a rewrite. That portability is the whole point.
Vercel
since 2025Hosting
Deploys from a git push and serves static pages from the edge. No servers to patch, which matters when there's one of me.
Docker
since 2026The on-premise stack
How an entire system gets installed identically on every client machine, and rolled back when an update misbehaves.
Xero API
since 2025Accounting integrations
Where most NZ small-business financial data actually lives. Bookkeeping automation starts and ends here.
Cursor
since 2025Writing the code
Worth naming because it's the honest answer. AI-assisted editing is how I ship at this pace alongside a full-time degree.