Uses
What I build with
The tools that are actually in use, not the ones I mean to try. If something is listed here it is running in production somewhere.
Android
The stack behind the apps on Google Play.
- Language
- Kotlin 2.0
- UI
- Jetpack Compose with Material 3
- Architecture
- MVVM + Repository, single activity, Navigation Compose
- DI
- Hilt
- Networking
- Retrofit + OkHttp, kotlinx.serialization for JSON
- Local storage
- DataStore Preferences
- Payments
- Google Play Billing 8 — one-off passes, verified server-side
- Build
- Gradle with version catalogs, AGP 8.9
- IDE
- Android Studio
Backend
Small, boring, and easy to reason about at 2am.
- Runtime
- Node.js with Express
- Database
- SQLite, accessed synchronously — no pool, no ORM
- Process manager
- PM2
- Web server
- Caddy, for certificates that renew themselves
- Host
- A single small Linux server
This site
Static, no client-side JavaScript, no third-party requests.
- Framework
- Astro 5, with MDX for posts
- Hosting
- Vercel
- DNS & registrar
- Cloudflare
- Type
- IBM Plex Sans and Mono, self-hosted
Day to day
- Assistants
- Claude Code for review and the parts I keep putting off, GitHub Copilot for inline completion
- Local models
- Ollama and llama.cpp
- Terminal
- Apple Terminal 2.15 on macOS Tahoe, with zsh
- Version control
- Git, with the work for a change kept on one branch