SlateLedger is a self-hosted household ledger foundation for debt, payment, and record tracking where people, transactions, balances, and exports need to stay understandable.
Problem Shape
Personal debt and payment records need conservative handling because small mistakes can distort balances, summaries, exports, and decisions. The product direction focuses on making transaction behavior explicit instead of hiding correctness behind unclear or duplicated state.
Product Direction
- Keep people, transactions, balances, summaries, and exports understandable.
- Calculate balances from transaction history instead of storing a separate balance value.
- Protect record access behind the documented authentication foundation.
- Keep frontend workflows aligned with same-origin API assumptions where applicable.
- Prefer narrow, explainable rules over broad automation.
- Keep privacy boundaries central to how the product is described.
Engineering Notes
The strongest engineering thread is correctness. The documented foundation includes a .NET API, Angular app shell, PostgreSQL persistence, health readiness, cookie-based authentication, people and transaction APIs, dashboard summaries, and CSV exports. The useful portfolio signal is the way the product keeps balances explainable by deriving them from transaction rows.
The data model direction is intentionally conservative. People can be archived, transaction history drives balances, currencies stay separate, and exports are described with explicit CSV handling. That makes the case study about reliability and privacy-aware records, not broad financial automation.
Evidence Signals
- The stack foundation is documented as ASP.NET Core, Angular, PostgreSQL, and Docker/Unraid-friendly deployment support.
- Authenticated people and transaction APIs are documented, with archived-record restrictions and calculated balances.
- Dashboard summaries group totals without currency conversion.
- CSV exports are documented with escaping, compatibility, and no admin credential export.
- Backup/restore and health readiness notes support the operational foundation without publishing private deployment details.
Public Boundary
This page focuses on product direction and correctness concerns. Private app links, private financial data, private user data, infrastructure details, credentials, logs, private environment values, and live deployment details stay out of view.