Show HN: Zero-maintenance, smart, automagic, FOSS generating+emailing invoices
by AlexCyon | 2025-07-07 07:03:59+00:00
https://github.com/Sajjon/klirr

Tired of manual bumping invoice number, calculating number of working days and looking up exchange rates and converting expenses into your currency?

Do you prefer automation? Then klirr is something for you!

Klirr is an AMAZING (Aesthetic, Multi-layouts/-language, Automatic, Zero-Maintenance, Inter-month Idempotent, Nimble, Gratis) invoice solution written in Rust + Typst

- *A*esthetic – *Produces polished, professional invoices*. Klirr uses Typst templates to generate a beautiful invoice PDF for your services and expenses, so the final result looks as good as a hand-crafted invoice, with consistent styling and formatting. - *M*ultiple layouts & languages – *Localized and dynamic with support for multiple layouts*. Klirr dynamically loads invoice labels in different languages via i18n, and currently supports English and Swedish (adding more languages is trivial). This means your invoices can easily be generated in the language that suits you or your client. The invoice format is powered by Typst, and while Klirr comes with one elegant layout by default, the code is prepared to very easily support additional layouts. You can extend or customize the template system to suit different styling needs, ensuring the solution can grow with your business. - *A*utomatic – *Automatically accounts for dates and work days*. Klirr uses your system’s calendar to determine the target month’s working days and sets the invoice date to the last day of the month, with the due date calculated based on your specified payment terms. It even allows you to mark any days you were off work, subtracting those from the billable days – all handled automatically so that your invoice reflects the correct time worked. - *Z*ero-Maintenance – *One-time configuration* via an interactive Terminal UI captures all company, client, and project info. After this initial setup, no manual editing is required, and no coding or format knowledge (Rust/Typst/[RON][ron]) is needed - *I*nter-month Idempotent – *Inter-month idempotence* ensures consistent invoice numbering. No matter how many times you build an invoice in a given month, it will reuse the same invoice number. When a new month begins, Klirr automatically increments to the next number. This guarantees a stable, chronological sequence of invoices without duplicates or gaps. - *N*imble - *Quickly and effortlessly generates invoices in no-time* - *G*ratis – *Free and open source forever*.

If that was not enough, klirr also supports [generation of expense invoices](https://github.com/Sajjon/klirr?tab=readme-ov-file#expenses-...) which automatically fetched currency exchange rates and translates them into your currency at the date of transaction for all your purchases.

Klirr also supports [automatic emailing of the invoices](https://github.com/Sajjon/klirr?tab=readme-ov-file#email)

*This is perfect for freelancers who have one single client and invoice per day once per month - a common consulting setup.*

Do you have improvement suggestions? Or perhaps some invoice layout/design you love and would like me to support, let me know!

I would love it if you could give me a on Github, thank you

Klirr is open and free forever, under MIT license.