https://github.com/EmaApps/timedot-invoice
WIP: Swift invoice generator for Hledger timedot file
https://github.com/EmaApps/timedot-invoice
hledger invoice
Last synced: 5 months ago
JSON representation
WIP: Swift invoice generator for Hledger timedot file
- Host: GitHub
- URL: https://github.com/EmaApps/timedot-invoice
- Owner: EmaApps
- License: agpl-3.0
- Created: 2022-05-05T00:44:59.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2022-11-26T23:29:04.000Z (almost 3 years ago)
- Last Synced: 2024-08-03T15:06:16.491Z (about 1 year ago)
- Topics: hledger, invoice
- Language: Haskell
- Homepage:
- Size: 132 KB
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# timedot-invoice
WIP: `nix run`-generate your invoice from a [hledger timedot](https://hledger.org/time-planning.html) file.
- Write your own HTML ([heist](https://srid.ca/heist-start) template) and CSS, with a default one generated automatically.
- Make full use of [Ema](https://ema.srid.ca/)'s hot reload, for a live view of invoice.
- Simple. Does one thing, and one thing only. No kitchen sink. "Print to PDF" if you want PDF.Nix Cache: https://garnix.io/docs/caching
## Contributing
Contributions are welcome, in particular on any of the following aspects:
- Design improvements (HTML, CSS)
- More general parameters (invoice duration, granularity, etc.) without compromising the ability to specializeRun `bin/run` and hack away in VSCode under Nix shell.
## Tasks
I already use this to generate my invoices. However, the following must be finished before *general availability* of the project:
- File management
- [ ] A 'default' layer, for the .tpl file. Although the user can override it optionally, they should be able to use the default HTML without having to customize it.
- [ ] Auto-copy the .yaml file alongside the timedot file. Default layer's version is useless here.
- Customizability
- [ ] Customize invoice duration (currently hardcoded to 'everything')
- [ ] Customize invoice precision (currently hardcoded to 'weekly')