A reliable, user-friendly Plain Text Accounting tool with command line, terminal and web interfaces.
Go to file
2022-03-18 21:38:31 -10:00
.github ;fix: doc: update help/help-feedback links (#1807) 2022-01-15 08:53:48 -10:00
.sandstorm Add --capabilities-header to launcher.sh 2018-06-24 17:44:22 +02:00
bin fix: bin: Get hledger-print-location working. 2022-03-10 16:56:46 -10:00
checks update dev setup tests 2015-03-16 17:59:06 -07:00
doc doc: announce 1.25 2022-03-04 20:08:09 -10:00
docker package: added helper scripts in docker/ 2019-01-31 12:44:12 -08:00
docker-static-arm32v7 Static builds for Linux on x64 (amd64) and arm32v7 architectures (#1571) 2021-06-30 18:05:27 -10:00
examples ;examples: multicurrency.journal 2021-12-22 15:38:48 -10:00
hledger imp: allow pivoting on 'status' also 2022-03-18 21:38:31 -10:00
hledger-install install: 1.25 2022-03-04 20:08:09 -10:00
hledger-lib imp: allow pivoting on 'status' also 2022-03-18 21:38:31 -10:00
hledger-ui dev: reg: areg: Strip prices early on in PostingsReport and AccountTransactionsReport, when possible. 2022-03-10 17:21:40 -10:00
hledger-web ;doc: update changelogs 2022-03-10 16:55:46 -10:00
tools tools: release: prep: more verbose progress output 2022-03-05 13:36:13 -10:00
.ci ;api: another round of hledger-api purging; fix the build 2019-09-11 14:49:22 -07:00
.ctags cli, lib: move functional tests into hledger/test/ 2020-11-16 08:47:41 -08:00
.dockerignore package: added Dockerfile 2019-01-29 16:14:03 -08:00
.editorconfig fix datepicker not closing, linting 2017-12-30 13:44:40 -05:00
.ghci tools: use pretty-simple for ghci output 2020-11-03 08:19:01 -10:00
.gitignore fix: extend application of commodity style to prices (except precision) and make --commodity-style a general flag 2021-09-20 08:55:55 -10:00
.hlint.yaml dev: hlint: Avoid use of reverse. 2021-08-27 06:13:56 -10:00
.mailmap doc: use consistent spelling of Mykola Orliuk 2017-03-27 05:47:15 -07:00
.version ;pkg: bump version to 1.25.99 2022-03-05 13:24:48 -10:00
ACHIEVEMENTS.md ;doc: ACHIEVEMENTS: format, update 2021-09-27 00:26:07 -10:00
azure-pipelines.yml ;api: another round of hledger-api purging; fix the build 2019-09-11 14:49:22 -07:00
BACKLOG.org ;backlog: build-tools 2021-11-13 09:34:38 -10:00
bench-ledger.sh ;imp: perf: Ledger-friendly bench-ledger.sh, for comparative benchmarking 2021-11-20 22:05:19 -10:00
bench.sh ;tools: update instructions for installing quickbench 2021-06-15 15:19:38 -10:00
BENCHMARKS.md ;doc: add page TOCs to more dev docs 2021-09-27 01:56:13 -10:00
cabal.project ; cabal.project: Drop compatibility comment 2021-10-08 08:31:43 -10:00
CHANGELOGS.md doc: releasing, changelogs updates 2022-02-06 12:04:29 -10:00
CHANGES.md ;doc: update changelogs 2022-03-10 16:55:46 -10:00
CODE.md ;doc: add page TOCs to more dev docs 2021-09-27 01:56:13 -10:00
COMMITS.md doc: commits: tweak 2022-02-07 12:02:30 -10:00
CONTRIBUTING.md ;fix: doc: update help/help-feedback links (#1807) 2022-01-15 08:53:48 -10:00
CREDITS.md doc: credits: keep names on one line 2022-03-10 16:25:32 -10:00
dev.hs collect some langage pragmas in dev.hs 2019-02-20 18:08:33 -08:00
dir ;dev: doc: update manuals 2021-07-12 18:50:06 -10:00
Dockerfile ;api: another round of hledger-api purging; fix the build 2019-09-11 14:49:22 -07:00
DOCS.md ;doc: merge doc/README with dev docs 2021-09-27 02:20:44 -10:00
EXAMPLES.md ;doc: move more content out of CONTRIBUTING 2021-09-27 01:44:14 -10:00
FUNDING.md ;doc: add page TOCs to more dev docs 2021-09-27 01:56:13 -10:00
hie-mac.yaml ;dev: make HLS work on tools/* 2022-01-01 15:55:59 -10:00
ISSUES.md ;doc: move more content out of CONTRIBUTING 2021-09-27 01:24:59 -10:00
LICENSE add LICENSE 2008-10-01 07:52:07 +00:00
MAKE.md ;doc: move more content out of CONTRIBUTING 2021-09-27 01:44:14 -10:00
Makefile test: Run all tests with --fast compilation, not just functests. 2022-01-26 08:10:59 -10:00
Makefile.helpsys make: rename sub-makefiles; start moving site script to make/shake 2019-03-05 18:43:04 -08:00
PULLREQUESTS.md ;doc: add page TOCs to more dev docs 2021-09-27 01:56:13 -10:00
README.md doc: readme tweaks 2022-03-08 14:27:29 -10:00
RELEASING.md doc: releasing: cleanups 2022-03-08 15:25:10 -10:00
ROADMAP.org ;doc: orgfiles: disable smart dashes in another way 2021-09-27 12:15:09 -10:00
Shake.hs pkg: bump to stackage nightly-2022-03-03 2022-03-04 15:38:57 -10:00
SHAKE.md ;doc: move more content out of CONTRIBUTING 2021-09-27 01:44:14 -10:00
stack8.6.yaml dev: Use realLength from doclayout instead of strWidth and textWidth. (#895) 2021-11-11 18:29:50 -10:00
stack8.8.yaml dev: Use realLength from doclayout instead of strWidth and textWidth. (#895) 2021-11-11 18:29:50 -10:00
stack8.10.yaml stack: 810, 90 updates 2021-12-16 12:51:05 -10:00
stack9.2.yaml stack: note 9.0.2 blocker 2022-01-14 09:32:37 -10:00
stack.yaml pkg: bump to stackage nightly-2022-03-03 2022-03-04 15:38:57 -10:00
TESTS.md ;doc: add page TOCs to more dev docs 2021-09-27 01:56:13 -10:00
VERSIONNUMBERS.md ;doc: move more content out of CONTRIBUTING 2021-09-27 01:44:14 -10:00
WORKFLOWS.md ;fix: doc: update help/help-feedback links (#1807) 2022-01-15 08:53:48 -10:00

hledger

Robust, intuitive plain text accounting

license on hackage github issues

Welcome! This a brief intro to hledger. For a more detailed version, see the home page: https://hledger.org

hledger is lightweight, cross platform, multi-currency, double-entry accounting software. It lets you track money, investments, cryptocurrencies, invoices, time, inventory and more, in a safe, future-proof plain text data format with full version control and privacy.

hledger aims to help both computer experts and regular folks gain clarity in their finances and time management. Though the UIs are basic, hledger can model any accounting situation and provide precise, clear reports. It is reliable, quick, and backed by the highly supportive Plain Text Accounting ecosystem. Using it is an excellent way to learn double entry accounting.

Compared to other PTA apps, hledger is actively maintained, with regular releases, and a strong focus on being easy to use and practical for everyday accounting.

More features:

  • Installs easily on unix, mac or windows
  • Complete, built-in documentation in multiple formats, beginner videos, tutorials etc.
  • Multiple UIs: command-line, terminal, web, mobile, editors/IDEs
  • Good at importing and exporting CSV; also outputs text/HTML/JSON/SQL
  • A robust, general, well-specified multi-currency accounting engine
  • Fast, analysing 25k transactions per second on a macbook air m1
  • Accurate to 255 decimal places
  • Supports your preferred account names, currencies, number formats
  • Inspired by and partly compatible with Ledger CLI; interconvertible with Beancount
  • Scriptable by CLI, HTTP or API, with plenty of examples
  • Clean Haskell codebase, continually improved since 2007, with $100 regression bounties
  • Free software licensed under GPLv3+.

Examples

I use hledger to:

  • track income and spending, sometimes with budgets
  • see time reports by day/week/month/project
  • track reimbursables, invoices and payments
  • predict cashflow and account balances
  • get accurate numbers for tax filing
  • research past events

Here's an example of the journal file format:

2022-01-01 opening balances as of this date
    assets:bank:checking                $1000
    assets:bank:savings                 $2000
    assets:cash                          $100
    liabilities:creditcard               $-50
    equity:opening/closing balances

2022-01-15 market
    expenses:food             $50
    assets:cash              $-50

2022-02-01 GOODWORKS CORP
    assets:bank:checking           $1000
    income:salary                 $-1000

and some simple reports:

$ hledger bs
Balance Sheet 2022-02-15

                        || 2022-02-15 
========================++============
 Assets                 ||            
------------------------++------------
 assets:bank:checking   ||      $2000 
 assets:bank:savings    ||      $2000 
 assets:cash            ||        $50 
------------------------++------------
                        ||      $4050 
========================++============
 Liabilities            ||            
------------------------++------------
 liabilities:creditcard ||        $50 
------------------------++------------
                        ||        $50 
========================++============
 Net:                   ||      $4000 
$ hledger is --monthly                                            
Income Statement 2022-01-01..2022-02-28                                               
                                                                                      
               ||  Jan    Feb                                                         
===============++=============                                                        
 Revenues      ||                                                                     
---------------++-------------                                                        
 income:salary ||    0  $1000                                                         
---------------++-------------                                                        
               ||    0  $1000                                                         
===============++=============                                                        
 Expenses      ||                                                                     
---------------++-------------                                                        
 expenses:food ||  $50      0                                                         
---------------++-------------                                                        
               ||  $50      0                                                         
===============++=============                                                        
 Net:          || $-50  $1000                                                         

More examples and screenshots: https://hledger.org/#how-to-get-started

Sponsors

hledger is brought to you by Simon Michael and 140+ contributors. After enjoying some personal or organisational success with hledger, you might want to become one of the generous sponsors helping to sustain this work. (More info: https://hledger.org/sponsor.html)

Sponsor Simon (project leader)

github liberapay paypal

Organisations sponsoring hledger

OpenCollective

Individuals sponsoring hledger

OpenCollective

Sponsor specific tasks

all bounties bountysource bounties