[cd ~]lsbarro/portfolio/twocats $
Project · 2026

two cats

An iPhone app for splitting shared expenses with the people in your life: the flat, the trip, Friday dinners.

Designed and built solo: the Swift app, the Go sync server, the hosting and the website.

two cats Home screen
Assigning receipt items
two cats Home screen
Assigning receipt items

What it does

How it's built

System overview: the iPhone's SQLite ledger is the source of truth; a Go server on Render stores sync envelopes in PlanetScale Postgres, proxies receipt scans to Azure Document Intelligence, keeps photos in Cloudflare R2 and backs up nightly to Backblaze B2.System overview: the iPhone's SQLite ledger is the source of truth; a Go server on Render stores sync envelopes in PlanetScale Postgres, proxies receipt scans to Azure Document Intelligence, keeps photos in Cloudflare R2 and backs up nightly to Backblaze B2.
  1. 01The phone's SQLite database is the source of truth.
  2. 02Every write is one transaction.
  3. 03Money is an integer.
  4. 04Nothing financial is ever deleted.
  5. 05Derived state can be rebuilt.
  6. 06The server never interprets a ledger.

The pixel cats

Every person has a cat, generated from their name on every device, with nothing stored or synced.

Priya's catMaya's catJonah's catDev's catTheo's catNora's cat