Status
Active build · Scaffold complete · Mock data layer · Anthropic wiring next · Updated May 2026
5s
Log-an-expense target
0
Screens to memorize
100%
Manual-first by default
2
Budgeting philosophies stacked
The Challenge
Every personal-finance app dies on the same hill: logging friction. Open the app, find the screen, tap the category, confirm the merchant — by month two you stop logging, the data goes stale, and the system fails. The opening was clear: a budget app for people who already won the basic-budgeting game and need a tool that respects how they already think about money.
Impact & Results
Shipped a complete product surface — marketing site, auth flow, and six in-app screens — anchored by a chat-first input model and a custom design system. Every screen renders against a working data layer with a deterministic mock LLM standing in until the Anthropic + Supabase wiring lands. The brand system (Lagoon accent, Midnight base, full dark mode) was audited and shipped to a consistent token model across the entire app.
What I Learned
- Inverting the input model is the whole product. Once chat became the primary surface, every other screen got simpler — dashboards became outputs, not data-entry forms.
- Two budgeting philosophies stack better than they compete. Sinking funds (anticipation) and zero-based (assignment) solve different problems; forcing users to pick one is the mistake every incumbent makes.
- Dogfooding kills feature debates. Using the app daily collapsed weeks of “should we build X” into “I needed this yesterday” or “I haven’t opened that screen in a month.”
The Outcome
A working scaffold of a calm, FIRE-native finance app — with a chat-first logging flow, sinking-fund-first budgeting, native FI / Coast / Barista / Lean / Fat calculators, and a design system that holds up across light and dark mode. Privacy-first by default: manual logging, optional Plaid, CSV export at any time.
Project Deliverables
- Brand System
- Marketing Site
- Auth Flow
- Chat Interface
- FIRE Calculators
- Persistent Dashboard
Key Features
- Chat-first logging — “i spent $30 at target” → categorized, confirmed, and on the dashboard in five seconds. Suggestion chips like “am i on track this month” and “how close am I to my Travel SF goal?” turn the input into a query layer too.
- Show-your-work AI — The assistant proposes the category, sinking fund, and need/want tag before writing anything. One-tap confirm; edit if it’s wrong. No hallucinations slip through.
- Sinking funds done right — Target dates, monthly contributions, projected fill date. Future-you already paid the bill.
- Zero-based + sinking funds, stacked — Every dollar gets a job; sinking-fund contributions are first-class line items. Two philosophies that compound instead of compete.
- FIRE-native calculators — FI, Coast, Barista, Fat, Lean. Persistent Good/Better/Best scenarios saved to local state, not throwaway one-shot tools.
- Net worth charted honestly — Manual balances, monthly snapshots, breakdown by cash / brokerage / retirement.
- End-of-month auto-summary — A chat message on the 1st recapping spend, budget hits, and net-worth movement.
- Custom design system — Voluta brand tokens, Lagoon accent, Midnight base, full light/dark parity. Every pill, card, and chart audited to the same token model.
- Marketing surface — Splashy homepage with live chat demo, philosophy-driven About page, four-tier pricing comparison, and an exposed
/brand-kitand/palettesfor design transparency. - Privacy-first defaults — Manual logging by default, Plaid optional, no analytics on financial data, CSV export anytime. You always own your numbers.
- Auth + data layer — Supabase Postgres + Auth scaffolded, initial schema migration committed, ready to swap mock data for live.