I built TrueLedger because I didn’t want a personal finance app that requires a cloud account or bank credential access just to work.
TrueLedger is a local-first personal finance app. All data stays on the user’s device and works fully offline.
Technical choices: - SQLite for local storage across platforms - SQLCipher (AES-256) for encrypted databases - Web version runs entirely client-side using SQLite WASM - Encrypted, deterministic JSON backups for portability without a server
Demo (runs fully client-side): https://trueledger.satyakommula.com
Source: https://github.com/satyakommula96/trueledger
Happy to answer questions about local-first design or encryption tradeoffs.