← All case studies

Case study 2 of 3

Invoice and Document Studio

02 Web app · Internal tool

Next.js · TypeScript · Tailwind CSS · SQLite · Puppeteer · pdf-lib

  • 100%vector PDF output
  • 4invoice states
  • 5built-in tools
Challenge
Companies that bill international clients often rebuild each invoice by hand in a word processor. Numbering, layout, bank details and signatures drift from one document to the next, and official letters are produced the same slow way.
Solution
A local-first studio that keeps everything in one place: an invoice editor with a live preview, an authorization-letter builder, a visual PDF editor, client and payment directories and a backup tool, all backed by a fast local database. The demo runs on a fictional company, so it is safe to show openly.

What I built

  • Invoice editor with live preview. Edit on the left and watch the document update on the right. Multiple line items with quantity, unit and rate, tax and discount, a service period, a consultant and role, and a status that moves from draft to saved, sent and paid.
  • Print-quality PDFs. Headless Chromium turns each template into a sharp vector PDF, with company logo, brand colours, watermark, signature and stamp, so documents look the same on screen and on paper.
  • Authorization letters. Official representative letters with editable purpose, duties and validity text, plus switches to show or hide the signature and stamp for physical printing or digital sharing.
  • Visual PDF editor. Open a blank page or an uploaded PDF and add text, images, signatures, rectangles and lines, with control over font, colour, opacity and rotation before exporting.
  • Clients and payment profiles. A full directory of clients and reusable bank profiles (account details, routing, wire routing, SWIFT, reference instructions) that can be picked per invoice.
  • Data you can trust. A local SQLite database in write-ahead mode, versioned JSON backups, restore by replacing or merging, and an activity log of every create, edit and export.
  • A dashboard that answers the first question. Invoiced volume, number of clients and letters, and the most recent invoices on one screen.
Outcome
Invoices and authorization letters, in print and digital modes, now come from one place in one consistent format, with a clean backup and restore path.