projects
Everything I've built and why I made each call. The private ones don't have public code, but they do have a case study.
cd/ui
My React components. You can see how much each one weighs and install it right into your project.
32 components and 15 blocks, ~695 B gzipped on average
- React
- TypeScript
- Base UI
- Tailwind v4
- shadcn registry
- Zod
converter-hub
Converts spreadsheets, images and other files right in your browser.
no file ever leaves the browser
- TypeScript
- SQLite (WebAssembly)
- Vitest
cd-ai
A coding agent where the AI suggests and the program itself checks before doing anything.
runs 100% on your computer, with Ollama
- Rust
- Tauri
- Ollama
- Next.js
sentinel-forge
Reads server logs and flags what looks like an attack. It's where I study security.
a thousand login attempts become a single alert
- Go
- YAML
loopvet hubprivate
The tool I use to bring a clinic's data from another system into Loopvet, checking everything before it imports.
from 1 to up to 10 clinics migrated a day, in testing
- Bun
- Next.js
- TypeScript
- Base UI
- Playwright
finprivate
Our household finances in one dashboard, with alerts on Discord. It only reads bank data and never moves money.
350+ tests, and no amount is ever stored
- Next.js
- TypeScript
- Open Finance (Pluggy)
- Vercel Cron
- Discord





