plaintextaccounting
ShellCheck
Our great sponsors
plaintextaccounting | ShellCheck | |
---|---|---|
61 | 488 | |
519 | 34,995 | |
1.2% | - | |
9.4 | 8.7 | |
8 days ago | 2 days ago | |
HTML | Haskell | |
GNU General Public License v3.0 only | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
plaintextaccounting
-
Double-Entry Bookkeeping as a Directed Graph
I use ledger: https://ledger-cli.org/
I believe this same plain text format is used by other tools, which you can find info about here: https://plaintextaccounting.org/ (In particular a lot of people seem to use hledger and beancount)
The ledger is written using a text editor. The purpose of the software is to add everything up, calculate the balances and make sure everything balances. I keep all of my 12 years of accounting in one file and haven't noticed any slowdown. But a real business would surely have many more accounts and may want to split files by financial year or something.
I use helper scripts to convert the data from my bank CSV downloads into ledger format. It uses machine learning to associate payees to accounts (e.g. "Tesco" gets filed to the account "Expenses:Groceries"). I haven't maintained the ML part although it works for me most of the time. In case it's useful, the code is here: https://github.com/georgek/accounts/
- Pandoc
-
Ask HN: How Do You Budget?
I invite you to hang out in the https://plaintextaccounting.org/#news-discussion -> chats, we like to discuss tactics.
-
Trakk: expense trakking app
My attempt at solving the same problem https://paisa.fyi. It builds on top of https://plaintextaccounting.org/ principles and is available as a CLI/Desktop App.
-
Mint is shutting down, and it's pushing users toward Credit Karma
ledger, hledger, beancount: https://plaintextaccounting.org/
Gnucash
Firefly III
The plain text accounting options are by far the best if you're willing to give up automatic pretty navigation and graphing.
- Why plain text accounting over tools like excel or other accounting software, apart from version control?
-
Accounting for Computer Scientists – Martin Kleppmann's Blog
Same: see also https://plaintextaccounting.org/
...the gist is "ledger.exe" (crufty-old-C-program) is the "perl" of plain-text-accounting. The implementation _is_ the specification.
"HLedger" (haskell) is the mostly-compatible ("now you have 15 standards!") which cleans up a bit of the crufty accidents and is considered more "pure" and "correct".
Mess with it for funsies, and consider using `hledger-ui` for browsing. It's really really powerful!
Specifically this part is super cool: https://ledger-cli.org/doc/ledger3.html#Commodities-and-Curr...
...and: https://ledger-cli.org/doc/ledger3.html#Currency-and-Commodi...
Implied exchange rates, arbitrary commodities/inventory. It gets into really heady territory pretty quick.
-
Ask HN: Plaintext-oriented and SQLite based family office accounting solutions?
Does anyone know of in the spirit of something like plain text accounting (https://plaintextaccounting.org/) but adapted to integrate the complexities of a wealthy family? I intend to implement something myself, but was interesting if there was anything else out there.
The point would be to design something that substitutes for Addepar but with a sensibly organized sqlite db and csvs as "first class" sources of truth (and scripts to handle a variety of common functionality).
So it is really an exercise in understanding the correct architecture of various hierarchies, relationships, and categories in the context of a wealthy family.
All the major software out there just does not seem very good, have a principled handle on the fundamental and primitive relationships and operations that describe a family's financial affairs (everything done on an ad hoc basis). And because of this, entail complete data/platform lock-in.
-
Ask HN: How do you manage your personal finances?
I use Beancount; learned at https://plaintextaccounting.org/.
-
Please tell me the fastest way to analyze the expenses from bank statemẹnts and catẹgorise them accordingly
I use ledger (https://plaintextaccounting.org/) to manage my transactions in plain text and then generate reports. I copy/paste the transactions from pdfs received monthly in an Emacs Org file and then convert them to ledger format using ob-lc (https://github.com/jayrajput/ob-ledger-convert). There is a steep learning curve, but the results are awesome.
ShellCheck
-
Ask HN: Is there a GUI for bash shell?
ncurse, dialog, zenity[2]. i/o buffering may be an issue [3a,3b]
Assuming using same account, use history command to show past commands[0a, 0b]
'load random example' on shellcheck using own custom examples from history command.[1]
--------
[3a] : http://www.gnu.org/software/coreutils/manual/html_node/stdbu...
[3b] : http://unix.stackexchange.com/questions/25372/how-to-turn-of...
[2] : http//funprojects.blog/2021/01/25/zenity-command-line-dialogs/
[1] : http://www.shellcheck.net/
[0a] : http://www.tecmint.com/history-command-examples/
[0b] : http://www.tecmint.com/remember-linux-commands/
web based documentation: https://www.tecmint.com/linux-commands-cheat-sheet/
commands grouped by typical usage patterns : https://www.tecmint.com/essential-linux-commands/
-
DevSecOps with AWS- IaC at scale - Building your own platform - Part 1
... #************************** Terraform ************************************* ARG TERRAFORM_VERSION=1.7.3 RUN set -ex \ && curl -O https://releases.hashicorp.com/terraform/${TERRAFORM_VERSION}/terraform_${TERRAFORM_VERSION}_linux_amd64.zip && unzip terraform_${TERRAFORM_VERSION}_linux_amd64.zip -d /usr/local/bin/ RUN set -ex \ && mkdir -p $HOME/.terraform.d/plugin-cache && echo 'plugin_cache_dir = "$HOME/.terraform.d/plugin-cache"' > ~/.terraformrc #************************* Terragrunt ************************************* ARG TERRAGRUNT_VERSION=0.55.1 RUN set -ex \ && wget https://github.com/gruntwork-io/terragrunt/releases/download/v${TERRAGRUNT_VERSION}/terragrunt_linux_amd64 -q \ && mv terragrunt_linux_amd64 /usr/local/bin/terragrunt \ && chmod +x /usr/local/bin/terragrunt #*********************** Terramate **************************************** ARG TERRAMATE_VERSION=0.4.5 RUN set -ex \ && wget https://github.com/mineiros-io/terramate/releases/download/v${TERRAMATE_VERSION}/terramate_${TERRAMATE_VERSION}_linux_x86_64.tar.gz \ && tar -xzf terramate_${TERRAMATE_VERSION}_linux_x86_64.tar.gz \ && mv terramate /usr/local/bin/terramate \ && chmod +x /usr/local/bin/terramate #*********************** tfsec ******************************************** ARG TFSEC_VERSION=1.28.5 RUN set -ex \ && wget https://github.com/aquasecurity/tfsec/releases/download/v${TFSEC_VERSION}/tfsec-linux-amd64 \ && mv tfsec-linux-amd64 /usr/local/bin/tfsec \ && chmod +x /usr/local/bin/tfsec \ && terragrunt --version #**********************Terraform docs ************************************ ARG TERRRAFORM_DOCS_VERSION=0.17.0 RUN set -ex \ && curl -sSLo ./terraform-docs.tar.gz https://terraform-docs.io/dl/v${TERRRAFORM_DOCS_VERSION}/terraform-docs-v${TERRRAFORM_DOCS_VERSION}-$(uname)-amd64.tar.gz \ && tar -xzf terraform-docs.tar.gz \ && chmod +x terraform-docs \ && mv terraform-docs /usr/local/bin/terraform-docs #********************* ShellCheck ***************************************** ARG SHELLCHECK_VERSION="stable" RUN set -ex \ && wget -qO- "https://github.com/koalaman/shellcheck/releases/download/${SHELLCHECK_VERSION?}/shellcheck-${SHELLCHECK_VERSION?}.linux.x86_64.tar.xz" | tar -xJv \ && cp "shellcheck-${SHELLCHECK_VERSION}/shellcheck" /usr/bin/ \ && shellcheck --version ...
-
Ask HN: Popular open source tool originally written in Haskell?
ShellCheck: https://github.com/koalaman/shellcheck
-
Google ZX – A tool for writing better scripts
If I want to write better shell scripts I usually run shellcheck and adjust accordingly or if I need facilities not provided by the shell i switch to a full fledged programming language. Ans oh yes, `sh` is present almost on every BSD and Linux box for free so I consider it an important thing to at least be comfortable with.
shellcheck: https://www.shellcheck.net/
-
How I use Nix in my Elm projects
When I run nix-shell at the root of the project it puts me in a Nix shell that contains, among other programs, caddy and shellcheck. Notice that in the shellHook I add the project's shell scripts to the PATH. So once I'm in the Nix shell I can, among other things:
- Ask HN: A Bash guide for Posix programmers?
-
Regex support to list modules in .cabal?
I have also seen some projects on github like ShellCheck which first make a library, expose all the modules and then simple add that do build-depends of the final executable. Is this the recommended approach than having just one executable and adding all the modules to other-modules:?
-
Shellcheck finds bugs in your shell scripts
The error checks can be pretty arcane:
https://github.com/koalaman/shellcheck/wiki/Checks
-
Is there a syntax checker?
Similar to for instance shellcheck to check the syntax of shell scripts, is there an equivalent for the set of roff commands typically used in a (Linux) man page? I'm aware that e.g. pandoc permits the conversion of an other format (e.g., org) to both roff man and roff ms.
- Shellcheck – finds bugs in your shell scripts
What are some alternatives?
actual - A local-first personal finance app
bash-language-server - A language server for Bash
hledger-mode - An Emacs major mode for Hledger
shfmt - Dockernized shfmt. This formats shell script.
emanote - Emanate a structured view of your plain-text notes
shellharden - The corrective bash syntax highlighter
ynab-to-ledger - A tool to convert a YNAB-exported CSV file to a plaintext accounting ledger dat file
shfmt - A shell formatter (sh/bash/mksh)
reckon - Flexibly import bank account CSV files into Ledger for command-line accounting
PowerShell - PowerShell for every system!
hledger - Robust, fast, intuitive plain text accounting tool with CLI, TUI and web interfaces.
efm-langserver - General purpose Language Server