plaintextaccounting.org

Plain Text Accounting (PTA)

Plain text accounting is a way of doing bookkeeping and accounting with plain text files and scriptable, command-line-friendly software, such as Ledger, hledger, or Beancount.

Welcome! This site collects the PTA community's tools, docs and practices. It is maintained by Simon Michael (hledger project leader, PTA fan) and contributors like you. We invite you to join the chat or help improve the content.

Site map
What is Plain Text Accounting ?
News & discussion
Blogs & articles
Videos
Slides
FAQ
Cookbook
Docs: Accounting basics , PTA app docs , comparisons , intros , cheatsheets , cookbooks , FAQs
Software: PTA apps , Editor plugins , Data import/conversion , Price fetching , Data generation , Formatting , Reporting , Time logging , UI, console , UI, curses , UI, GUI , UI, web , UI, mobile , Library , Utilities , API

News & discussion

Site news - commits - contributors - issues
Chat - IRC (~50) - matrix (~60) - matrix space (room list) - app-specific chats
Mail lists - app-specific mail lists
Reddit - /r/plaintextaccounting
Lemmy - lemmy.world/c/plaintextaccounting
Hacker News - stories - comments
Mastodon - #plaintextaccounting - #ledgercli - #hledger - #beancount
Twitter - #plaintextaccounting - #ledgercli - #hledger - #beancount - @LedgerTips
Stack Exchange - ledger-cli tag - ledger-cli search - hledger tag - hledger search
Other - This Week In Hledger

Blogs & articles

A partial list, contributions welcome

2024

2023

2022

2021

2020

2019

2018

2017

2016

2015

2014

2013

2012

2011

2010

2009

2006

Videos

Slides

Docs

Accounting basics , PTA app docs , Comparisons , Intros , Cheatsheets , Cookbooks , FAQs

Accounting basics

PTA app docs

Comparisons

Intros

Cheatsheets

Cookbooks

FAQs

Software

PTA apps , Editor plugins , Data import/conversion , Price fetching , Data generation , Formatting , Reporting , Time logging , UI, console , UI, curses , UI, GUI , UI, web , UI, mobile , Library , Utilities , API

PTA apps

To do Plain Text Accounting, try one (or more) of the apps below. Generally it's possible to migrate data between them.

Project Start Last release Code Committers Stars Mail list, size Chat, size Issues, % open
 
Popular
Ledger 2003 2023 C++ 226 4.9k ledger ~900 IRC ~60 1.5k 47%
hledger 2007 2023 haskell 167 2.6k hledger ~200 matrix ~100, IRC ~70 1.3k 31%
Beancount 2008 2023 python 84 3.1k beancount ~700 matrix ~10, matrix (fava) ~190, IRC ~30 0.5k 63%
 
Small userbase
Ledger (Go) 2013 2023 go 11 409
Abandon 2013 2020 scala 11 178 matrix
knut 2020 2022 go 3 49
zhang 2023 2023 rust/ts 1 105
ledg 2021 2021 javascript 1 37
Goledger 2019 2020 go 1 25
blossom 2020 F# 1 25
awk-pta 2022 awk 1 15
Tackler 2017 2022 scala 1 9 matrix
coin 2019 go 1 7
budget-cli 2023 2023 typescript 1 2
mynt 2023 rust 1
 
Inactive
bankroll 2020 2020 rust 1 1
pta 2020 2020 perl 1
acc 2020 rust 1 1
rust_ledger 2019 2021 rust 4 90
beans 2019 2019 haskell 2 24
Transity 2018 2020 purescript 8 571 matrix
Prudent 2018 js, addons 1 @PrudentLedger
.Net Ledger 2017 2021 C# 1 164 matrix
monescript 2017 2018 javascript 1 12
Go Ledger 2016 go 3 37
uledger 2015 python 1 17
pacioli 2013 python 1 31
ledger.pl 2013 perl 1 6
Penny 2012 2014 haskell
UMM 2009 2010 haskell
sm-Ledger 2007 squeak
cl-ledger 2007 lisp 4 66

Editor plugins

Atom - language-ledger - ledger
Emacs - beancount-mode - hledger-mode - ledger-mode (good for hledger also)
IntelliJ - Ledger CLI
Nano - scopatz/nanorc
Sublime - sublime-ledger-syntax
TextMate - Ledger.tmbundle
VIM - vim-ledger - vim-beancount - hledger-vim - cmp-beancount
VS Code - hledger-vscode - ledger - vscode-beancount

Data import/conversion

Price fetching

Data generation

Formatting

Reporting

Time logging

UI, console

UI, curses

UI, GUI

UI, web

UI, mobile

Library

Utilities

API


(c) 2016-2024 Simon Michael & contributors | Send updates via github