← All work
Working private build

Debt Tracker

A private financial tracking system built around explicit movement types, multiple debt ledgers and a transparent balance model instead of one ambiguous running total.

Interface reconstruction from implemented UI · synthetic sample data
Cuenta principal
Balance inicial: $25,000.00
Deuda Personal$8,250.00
Deuda Negocio$5,600.00
Deuda Total$13,850.00
Balance de la Cuenta$11,150.00
Total Gastos Dueño$1,240.00
Movimientos RecientesVer todos →
Retiro Negocio15 oct 2026 · sample
-$420.00
Abono Personal12 oct 2026 · sample
+$600.00
Fee Bancario10 oct 2026 · sample
-$18.00
Depósito de titular08 oct 2026 · sample
+$250.00

Source fidelity: the implemented dashboard renders five balance cards, the five most recent movements, and a 240px desktop sidebar. Monetary values shown here are synthetic and do not represent real household or business balances.

Problem

One balance was not enough to explain what the money represented.

The system separates personal debt, business debt, account balance and owner withdrawals so changes can be traced instead of being inferred from a single total.

Data model

Movement type determines how a transaction affects each ledger.

Withdrawals, payments, bank fees, interest, owner deposits/withdrawals, loan-interest records and debt forgiveness are modeled as explicit movement types with defined effects.

Privacy

The portfolio shows structure, not private financial records.

The reconstruction preserves the implemented information architecture while replacing creditor names, balances, transaction notes and family details with synthetic examples.

Implemented system

Financial logic made inspectable.

The dashboard calculates balances from configuration plus recorded movements, then surfaces the latest activity. History supports type/date filters and pagination, while new movements are validated and grouped by purpose before they are saved. Separate areas handle the dedicated loan ledger, account holders and additional family ledgers without collapsing them into the main debt calculation.

DashboardDeuda Personal · Deuda Negocio · Deuda Total · Balance de la Cuenta · Total Gastos Dueño
Movement modelRetiros · Abonos · Cuenta · Titulares · Préstamo · Perdón de deuda
NavigationDashboard · Historial · Nuevo Movimiento · Préstamo 100K · Mis Hijos · Titulares · Configuración
StackNext.js 16.2.2 · React 19.2.4 · TypeScript · Prisma 5.22 · Tailwind 4 · Zod · React Hook Form · date-fns · Radix UI · Sonner