Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/maaslalani/invoice

Command line invoice generator
https://github.com/maaslalani/invoice

Last synced: 25 days ago
JSON representation

Command line invoice generator

Awesome Lists containing this project

README

        

Invoice

# Invoice

Generate invoices from the command line.

## Command Line Interface

```bash
invoice generate --from "Dream, Inc." --to "Imagine, Inc." \
--item "Rubber Duck" --quantity 2 --rate 25 \
--tax 0.13 --discount 0.15 \
--note "For debugging purposes."
```

View the generated PDF at `invoice.pdf`, you can customize the output location
with `--output`.

```bash
open invoice.pdf
```

Example invoice

### Environment

Save repeated information with environment variables:

```bash
export INVOICE_LOGO=/path/to/image.png
export INVOICE_FROM="Dream, Inc."
export INVOICE_TO="Imagine, Inc."
export INVOICE_TAX=0.13
export INVOICE_RATE=25
```

Generate new invoice:

```bash
invoice generate \
--item "Yellow Rubber Duck" --quantity 5 \
--item "Special Edition Plaid Rubber Duck" --quantity 1 \
--note "For debugging purposes." \
--output duck-invoice.pdf
```

### Configuration File

Or, save repeated information with JSON / YAML:

```json
{
"logo": "/path/to/image.png",
"from": "Dream, Inc.",
"to": "Imagine, Inc.",
"tax": 0.13,
"items": ["Yellow Rubber Duck", "Special Edition Plaid Rubber Duck"],
"quantities": [5, 1],
"rates": [25, 25],
}
```

Generate new invoice by importing the configuration file:

```bash
invoice generate --import path/to/data.json \
--output duck-invoice.pdf
```

### Custom Templates

If you would like a custom invoice template for your business or company, please
reach out via:

* [Email](mailto:[email protected])
* [Twitter](https://twitter.com/maaslalani)

## Installation

Install with Go:

```sh
go install github.com/maaslalani/invoice@main
```

Or download a binary from the [releases](https://github.com/maaslalani/invoice/releases).

## License

[MIT](https://github.com/maaslalani/invoice/blob/master/LICENSE)

## Feedback

I'd love to hear your feedback on improving `invoice`.

Feel free to reach out via:
* [Email](mailto:[email protected])
* [Twitter](https://twitter.com/maaslalani)
* [GitHub issues](https://github.com/maaslalani/invoice/issues/new)

---

zzz