Skip to content

patricklbell/invoicer

Repository files navigation

Invoicer

Invoicer is a full-stack invoice management system which consists of a public website and an API. Store, edit, share and send PEPPOL e-Invoices with confidence!

Invoicer Screenshot Access the online demo (may take a few seconds to spin up)

Documentation

The Invoicer API comes with extensive documentation

Tests

An Github action ensures all the API routes are unit tested with mocha and chai, and coverage is above 80% before deploying. It also ensures the entire codebase is linted with eslint and stylelint.

Deployment

Invoicer supports continuously delivery to Heroku, and AWS Elastic Beanstalk with Github actions.

Stack

An ExpressJS API is deployed to handle API requests, this API interacts with MongoDB using the Atlas API to store users and invoices in a database. A separate frontend web application utilizing ReactJS is served statically by the API. Authentication is handled with stateless JWT tokens to avoid needing a CDN. Documentation is also built with Hugo to be served statically.