SwiftInvoice
A browser invoice generator that builds a client-ready PDF without an account or a monthly plan.
Prototype: a working browser app, not promoted.
28 unit tests passing on the invoice totals, tax and currency formatting

- Where
- Personal project
- Role
- Product and build
- Built with
- Next.js, Tailwind CSS, html2pdf.js
What I made
Most invoicing tools ask for an account before they let a freelancer download a single PDF, and the free tiers often hide the download behind a paywall or a watermark.
SwiftInvoice is a static Next.js app: fill in a sender, a client and line items, watch the live preview update, and export a PDF with html2pdf.js. Nothing leaves the browser.
- Sender and clientname, email, address
- Line itemsdescription, quantity, rate
- Live previewsubtotal, tax and total, in one of five templates
- PDF exporthtml2pdf.js renders the preview to a file
5templates built into the generator
7currencies it formats
What came out of it
A form that becomes a PDF
Typing into the form updates a live preview, and the Download PDF button renders that same preview to a file, no server involved.

Five templates, seven currencies
The classic template is one of five layouts, and the amount column formats in whichever of seven currencies the invoice uses.

On a phone
The same form and preview work at phone width, switching between editing and the live invoice with one tab.


Where it's going
The full version remembers invoices between visits, offers more templates, a logo upload and recurring invoices, and is listed with search engines so a freelancer finds it without creating an account.
- NowBrowser prototypeA form, a live preview and a PDF export.
- Save and reloadInvoices save in the browser and reopen later.
- More templatesMore invoice templates and a logo upload.
- Found by searchListed with search engines and a sitemap.
- Recurring invoicesInvoices that repeat on their own schedule.