Go / Finance PWAPrivate working application

A private finance app built for two people

Wallets, transfers, budgets, debts, imports, and shared household decisions live in one multilingual app without turning the family ledger into a public fintech product.

Integer minor-unit ledger · linked transfers · budgets and debts · English, Thai, and Russian

The job

What needed to change

Generic budgeting apps either demand a cloud account or impose somebody else’s model. This one follows a small household’s actual wallets, transfers, categories, budgets, and debts.

The hard part

The constraint shaping the build

Keep money arithmetic exact, make paired transfers auditable, import old records, and never expose real balances in public proof.

System flow

How the pieces connect

  1. Wallets and imports
  2. Immutable ledger entries
  3. Linked transfers
  4. Budgets and debts
  5. Shared household view
  6. Export and recovery
Implemented views

Rendered examples from the build

Read-only private-finance demo showing the multi-currency household overview and wallet balances
Implemented household-finance surface using synthetic public records; persistent actions are disabled.
Build decisions

How I built it

  1. Store money as integer minor units rather than floating-point values.
  2. Link both sides of a transfer so edits cannot silently create or destroy money.
  3. Treat imports as reviewable inputs instead of trusting third-party categories.
  4. Use synthetic names and balances in every public demonstration.
Verification

What I verified

  • Wallet, transaction, transfer, budget, and debt workflows
  • Integer-minor-unit arithmetic
  • Money Lover import path
  • English, Thai, and Russian interface

Current state: This is private household software with no banking connection. It is not an accounting package, regulated financial product, or offline-first app.