Notes from the field
What I learn building apps and platforms – architecture, product decisions and the mistakes I don't make twice.

10 min read
Offline-first with Flutter and Supabase: an outbox, not spinners
How MoneyKoi works offline-first with Flutter and Supabase: SQLite as the source of truth, an outbox with retries and a single delta sync back from the server.
Flutter · Supabase · Offline-First

11 min read
A receipt scanner in Flutter: ML Kit, RKSV QR codes, no LLM
How MoneyKoi's receipt scanner in Flutter reads Austrian RKSV QR codes, extracts line items with ML Kit and per-shop parsers, and checks the total on the phone.
Flutter · ML Kit · OCR

8 min read
Supabase RLS for multi-tenant apps: one header, two rules
Supabase RLS for multi-tenant apps: how MoneyKoi checks the active tenant with a header and a pre-request hook, and secures reads and writes differently.
Supabase · PostgreSQL · Security