Local-first · Data integrity
LedgerKit
Financial records that can explain themselves.
An offline desktop ledger for multi-currency cash, investments, and net worth, with traceable changes and explicit data-quality checks.
One authority for financial rules
React UI
Preview
Rust core
Validate · Decimal rules
SQLite
Commit · Traceable changes
The problem
A ledger must do more than display a total. It needs to explain the prices and exchange rates behind a valuation, preserve corrected history, and make missing information visible instead of guessing.
My contribution
Developed the React desktop interface and Rust application core, including decimal rules, import reconciliation, and encrypted backup and recovery.
Engineering decisions
One authority for financial rules
The React interface calls named Tauri commands. Rust owns decimal arithmetic and posting rules; the UI cannot issue arbitrary SQL or invent a financial posting.
Correct history without erasing it
Posted events are revised or reversed through traceable changes. Canonical posting hashes support consistency checks, while missing prices or exchange rates remain explicit data-quality issues.
Validate before switching data
Imports are analysed and reconciled before commit. Portable backups are encrypted, and restoration checks the candidate database before switching the active ledger.
Delivery & scope
Windows x64 v1.0.0-beta.2 includes an installer and checksums. The core ledger runs locally without an account or cloud service. Signed stable releases, macOS/Linux support, and cloud sync remain outside this beta.
Explore the source
Code, architecture notes, and delivery details on GitHub.