-
Migrating Signal Desktop keyring backend
Since 2024, the Signal encrypted messenger desktop app uses the Electron safeStorage API to protect its database encryption key. On Linux systems, this means that the freedesktop.org Secrets API is used, which on GNOME is provided by GNOME Keyring, but on KDE is provided… »
-
DrCr, a double-entry bookkeeping tool
I present DrCr, a self-contained cross-platform open-source double-entry bookkeeping tool, written using Rust and Tauri, with Vue.js on the frontend, and Luau for scriptable plugin support.
DrCr provides an easily navigated GUI which facilitates exploring financial information. Unlike more minimalist ledger-likes, DrCr embraces… »
-
Moving beyond plaintext accounting – why I wrote my own double-entry bookkeeping tool
Since 2017, I have been using open-source double-entry bookkeeping tools to manage personal finances – initially GnuCash, and from 2019, the plaintext accounting tool ledger. Ledger, and plaintext accounting generally, sported a number of appealing features – the software is lightweight and performant,… »
-
A dynamic, extensible approach to implementing double-entry bookkeeping
Motivation
Double-entry bookkeeping is the foundation of modern accounting. I have recently been developing DrCr, open-source software for double-entry bookkeeping, which has proved fruitful – a further article about the software will be forthcoming. In simple terms, generating accounting reports from double-entry transaction data… »
-
A modern theme for cgit
cgit is a lightweight web frontend for git repositories. As opposed to modern git forges such as GitLab, Gitea and Forgejo, cgit provides view-only access, and does not have attached bells and whistles such as issue tracking or pull requests. This allows cgit to be… »
-
htmlcc: Statically compiled HTML templates for C
This article presents htmlcc, an HTML templating engine for C utilising static compilation.
Motivation
Web applications are not commonly written in C; one notable counterexample is cgit, a web frontend for git repositories. HTML output in cgit is implemented from scratch, using bespoke… »