Command-line double-entry accounting that reads plain text files and generates reports
Other
- C++
- Python
- Perl

About Ledger
Ledger is a double-entry accounting system accessed from the UNIX command line. There is no UI: you write account names and transactions into a text file, then run Ledger with options to specify the input and the reports you want. It reads the files and generates output, with no other database or stored state.
Output is generally plain text, but you can produce a graph or HTML instead. The tool is simple in concept yet rich in ability, offering detailed reporting access to your data. Optional Python bindings, off by default, enable features such as journal import.
Ledger is written in C++ and builds from source on Linux, macOS, and similar systems. A prebuilt Docker image is also available, letting you run it without installing further dependencies.
Key features
- Reads account names and transactions from text files
- Generates reports from command-line options
- Outputs plain text, graphs, or HTML
- No database or stored state outside the files
- Optional Python bindings for import and scripting
Details
- On GitHub since
- 2008
- Language
- C++
- License
- BSD 3-Clause
- Platforms
- CLI · Docker
- Storage
- Plain text files · no database
- Install
- Build from source · Docker
