A reliable, user-friendly Plain Text Accounting tool with command line, terminal and web interfaces.
Go to file
Stephen Morgan ab5350e02c ref: performance: Improve performance for some high-use functions.
mixedAmount(Looks|Is)Zero now operate directly on the MixedAmount,
rather than converting them to a list of amounts first.

mixedAmountCost no longer reconstructs the entire MixedAmount when there
are amounts with no cost.

transactionCheckBalanced only checks if signs are okay if sums are not
okay. It also only traverses the list of postings once when picking real
and balanced virtual postings.
2021-09-18 16:00:55 -10:00
.github ci: fix windows, make bash requirement explicit 2021-08-29 08:10:09 -10:00
.sandstorm Add --capabilities-header to launcher.sh 2018-06-24 17:44:22 +02:00
bin fix: bin: Allow hledger-check-fancyassertions to parse predicates (#1464). 2021-09-08 13:19:31 -10:00
checks update dev setup tests 2015-03-16 17:59:06 -07:00
doc imp: cli: move --today to reportflags (#1674) 2021-09-18 11:24:27 -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 ;tests: ui: use --today to make hledger-ui tests robust (#1674) 2021-09-18 11:10:25 -10:00
hledger imp: csv: sql: Use . as a decimal point in sql output for Print command. 2021-09-18 14:32:21 -10:00
hledger-install install: 1.22.2 2021-08-08 07:49:17 -10:00
hledger-lib ref: performance: Improve performance for some high-use functions. 2021-09-18 16:00:55 -10:00
hledger-ui ref: ReportOptions{infer_value_} renamed to infer_prices_ 2021-09-18 12:12:31 -10:00
hledger-web fix: web: Toggle showing zero elements properly even when called with 2021-09-18 11:50:36 -10:00
tools cln: hlint: Clean up some examples of using sortOn. 2021-08-27 06:13:56 -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 web: --test [-- HSPECARGS] runs the test suite 2020-11-16 14:02:16 -08: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.22.99 2021-08-03 00:24:20 -10:00
azure-pipelines.yml ;api: another round of hledger-api purging; fix the build 2019-09-11 14:49:22 -07:00
bench.sh ;tools: update instructions for installing quickbench 2021-06-15 15:19:38 -10:00
cabal.project ;cabal: fix cabal.project error with cabal 3.4 2021-03-12 07:01:48 -08:00
CHANGES.md ;doc: update changelogs 2021-08-26 20:59:45 -10:00
CONTRIBUTING.md ;doc: Convert some plain urls to links 2021-09-16 07:06:08 -10:00
CREDITS.md credits: notes for all multi-committers 2021-08-29 09:11:04 -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
hie.yaml ;tools: silence hls errors for Shake.hs 2020-12-07 12:27:03 -08:00
LICENSE add LICENSE 2008-10-01 07:52:07 +00:00
Makefile ;fix: make help-copy-bins-to: fix help 2021-09-18 12:44:44 -10:00
Makefile.helpsys make: rename sub-makefiles; start moving site script to make/shake 2019-03-05 18:43:04 -08:00
README.md ;doc: readme: drop badges header 2020-08-21 08:18:26 -07:00
RELEASING.md ;doc: RELEASING: mention hledger-install 2021-08-08 07:49:17 -10:00
ROADMAP.md ;doc: contributing, roadmap: toc placement 2021-07-23 19:07:09 -10:00
Shake.hs cln: hlint: Clean up Functor related hlint warnings, and NOINLINE warning. 2021-08-27 06:13:56 -10:00
stack8.6.yaml fix: web: b64 encode user controlled input (#1525) 2021-08-24 05:04:12 -10:00
stack8.8.yaml fix: web: b64 encode user controlled input (#1525) 2021-08-24 05:04:12 -10:00
stack8.10.yaml test: doctest cleanups, use latest 2021-07-20 20:38:39 -10:00
stack.yaml stack: 9.0: rename yaml file, making 9.0 the default 2021-07-20 20:38:39 -10:00

hledger project README

lightweight, portable, dependable accounting tools

hledger is a computer program for easily tracking money, time, or other commodities, on unix, mac and windows (and web-capable mobile devices, to some extent).

It is first a command-line tool, but there are also terminal and web interfaces, and a Haskell library for building your own programs and scripts (hledger is written in Haskell). hledger was inspired by and is largely compatible with Ledger. hledger is free software available under the GNU General Public License v3+.

hledger aims to help both computer experts and regular folks to gain clarity and control in their finances and time management, but currently it is a bit more suited to techies. I use it every day to:

  • track spending and income
  • see time reports by day/week/month/project
  • get accurate numbers for client billing and tax filing
  • track invoices

Though limited in features, hledger is lightweight, usable and reliable. For some, it is a simpler, less distracting, more future-proof alternative to Quicken or GnuCash.

For more, see the home page: https://hledger.org

Sponsorship

Your support, large or small, helps keep this project strong!
See also https://hledger.org#sponsorship.

Sponsor Simon (project leader): github liberapay paypal

Sponsor the hledger project as an organisation: OpenCollective

Sponsor the hledger project as an individual: OpenCollective

Bounties for specific tasks: all bounties bountysource bounties




license hledger CI on hackage github issues