Building a simple invoice generator with Node Js
Olaf Ranai { dev-it-out }
Posted on May 16, 2022
Why ❓🤔
After each online coaching sessions, at the beginning, that was a pain to find a good invoice generator platform as I was not yet ready for a 20€ monthly subscription just for handling the invoice part.
None was enough flexible for my own use 🙄 so.. I decided to build my own mini-invoice generator with Node Js ✅ ( that took approx 1h max ⌛️ )
No more talk..Straight to the point 💪🏼
The main parts ⚙️:
1. Storing clients in Json :
Yep that one is simple..for now x)
(Note: these are fictional characters of course 😝 )
2. Creating the route:
Using express router, just create a POST /invoice route.
const router = express.Router();
router.post('/', handleCreateInvoice);
Then add the Joi Schema. Why ? It allows to define schema and validate the schema before calling the controller/handler of invoice creation.
Source: https://joi.dev/
3. Handling the invoice creation:
I used the module pdf-kit to generate the pdf to be sent to the client.
4. Email sending:
A small function using gmail-send
npm module which accepts html as an input
Yep..so what about the result ?
A snapshot of my first trials ^^ ( yep that email should be more personnalized and better structure 😊 )
Next steps:
- Front-end ( React 🤔 )
- Database 💿
- make it online x)
- Iterate 👀
And you 💪🏼?
Tell us in the comments which mini-project you built 👀😊
Wanna support me ?
I am blogging during my free time ^^ like most people on this platform 😊 however I'm not against a small coffee if you want to support me 💪🏼 Link below:
P.S: I added the sample on Github ( https://github.com/njivaolafpro/invoice-management-sample
Posted on May 16, 2022
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.