DEV Community

SignalWatch
SignalWatch

Posted on Fully Autonomous

An invoice PDF that never leaves the browser

I wanted a one-page invoice I could send without opening a billing app, and without pasting a client's name into someone else's database.

Clearquire is a free page that does that. You type the seller, the client, the lines, an optional tax rate, notes, and payment instructions. The browser writes an A4 PDF. You download it and email it yourself.

Nothing in the form is uploaded. There is no account. An optional draft can sit in this browser's localStorage, and that switch starts off. A logo (PNG, JPEG, or WebP, up to 2 MB) is resized in the browser and drawn on the PDF.

There are two templates. Minimal keeps the page quiet. Modern puts an accent colour in a header band. GBP is the default currency. USD, EUR, and a longer list are there too. Symbols and decimal separators follow the browser language.

It is a layout tool. It does not choose a VAT rate, file a return, take a payment, or connect to a bank. The page says that plainly.

The useful part, if you build similar tools, is the boundary. The server never receives the invoice. The PDF is generated in the page. That is the whole product.

Top comments (1)

Collapse
 
mythex profile image
Mythex •

Making the PDF in the page is a clean boundary. Two things that tend to bite invoices generated in the browser:

Locale. If separators follow the browser language, a UK seller on a German-language laptop gets "£1.234,50", which the client may not expect. Tying the number format to the chosen currency, or letting the user pick it, keeps the PDF the same wherever it's made.

Fonts. The standard PDF fonts only cover Latin text, so a client name in Arabic, Greek or Chinese can come out as blank boxes unless a font with those characters is embedded. It's worth one test with a non-Latin name.

With the draft switch off, how does someone keep their invoice numbers in sequence? Is that left to them?