Generates a PDF (and HTML) invoice meeting Finnish invoice requirements.
The invoice data is separated into YAML files, and the styling can be configured
via Front-End code (HTML/CSS/JS/images).
npm install
docker build . -t finigen
Create a new folder named "in", copy the data/ and the template/ folders inside it, and customize the copied files to your liking. The in/ folder is git ignored.
mkdir -p in
cp -rf data in
cp -rf template in
npm start <invoice key>
node App.js --invoice <invoice key>
docker run -e invoice=<invoice key> -v ./in:/app/in -v ./out:/app/out finigen
--invoice <value> - must match an existing key in the ./in/data/invoices.yaml file
The invoice files (HTML,PDF etc.) will be generated into a new folder named "out". The out/ folder is git ignored.
- HTML to PDF conversion: https://pptr.dev/
- QR code generation: https://davidshimjs.github.io/qrcodejs/
- Barcode generation: https://lindell.me/JsBarcode/
- doT template engine: https://olado.github.io/doT/index.html
- YAML parsing: https://www.npmjs.com/package/yaml
- Background image Photo by mrish_marina_alekseevna from Pexels: https://www.pexels.com/photo/abstract-blue-painting-6563423/
- Example logo: https://app.logo.com/