Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jdennes/invoices
:euro: Jekyll-based invoicing for me (and maybe you).
https://github.com/jdennes/invoices
invoice invoicing jekyll pdf ruby
Last synced: about 1 month ago
JSON representation
:euro: Jekyll-based invoicing for me (and maybe you).
- Host: GitHub
- URL: https://github.com/jdennes/invoices
- Owner: jdennes
- License: mit
- Created: 2013-05-27T19:26:59.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2018-10-28T13:29:38.000Z (about 6 years ago)
- Last Synced: 2023-04-19T13:41:13.007Z (over 1 year ago)
- Topics: invoice, invoicing, jekyll, pdf, ruby
- Language: CSS
- Homepage:
- Size: 93.8 KB
- Stars: 4
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Invoices
This is a very quick Jekyll-based thing which allows me to do monthly invoicing by running `script/invoice`.
To use this yourself, fork and clone, then follow these instructions:
1. Setup:
```sh
$ script/setup
```2. Create your own `_config.yml` file. This will contain sensitive information and is included in `.gitignore`, along with `_posts` and `pdfs`, where your invoices will exist.
```sh
$ cp _config.yml.example _config.yml
```Edit your `_config.yml` file. Edit and add as many `invoice_line_items` as you like. The `invoice_currency`, `invoice_line_items`, and `invoice_payment_info` values are set for each invoice, so you can change them in future without old invoices being affected.
3. Run the app:
```sh
$ script/server
```That starts the app at [http://localhost:4000](http://localhost:4000). You shouldn't see any invoices there yet though.
4. Generate an invoice:
Without any arguments, this creates you an invoice for the current month:
```sh
$ script/invoice
"Generated your monthly invoice."
"Markdown file saved to: /Users/jdennes/projects/invoices/_posts/2015-01-31-invoice.markdown"
"PDF file saved to: /Users/jdennes/projects/invoices/pdfs/2015-01-31-invoice.pdf"
```You can also create an invoice for a specific date by passing the date as an argument to `script/invoice`:
```sh
$ script/invoice 2018-08-20
"Generated your monthly invoice."
"Markdown file saved to: /Users/jdennes/projects/invoices/_posts/2018-08-20-invoice.markdown"
"PDF file saved to: /Users/jdennes/projects/invoices/pdfs/2018-08-20-invoice.pdf"
```If you visit [http://localhost:4000](http://localhost:4000) now, you'll see your generated invoice listed there. Click on the invoice to see it in full, including a link to the generated PDF file.
You'll find the PDF file of your invoice saved in the `pdfs` directory:
```sh
$ open /Users/jdennes/projects/invoices/pdfs/2015-01-31-invoice.pdf
```That's it!