A single, printable, blank & fillable shipping label that runs entirely in your browser — no build step, no framework, no server.
Live: https://ezdanapak.github.io/shipping-label/
- One A5 shipping label with every field editable inline (
contenteditable): sender, date/time, phone, tracking number, recipient (Georgian text supported), product description, weight, quantity, courier/city, zone, and a reference code. - A real, scannable Code128 barcode (JsBarcode) and a QR code (qrcodejs), both regenerated live as you type the tracking number.
- Paper layout / duplication — pick how many identical copies print per sheet:
A5 — 1 label / pageA4 — 2 labels / page(side by side, landscape)A4 — 4 labels / page(2×2)A6 — 1 label / page- plus a Copies field to print any number of labels (they auto-flow across pages).
- Print / Save PDF button (
window.print(), dynamic@pagesize) and a Clear button. - Edits (and your layout choice) are saved to
localStorage, so they survive a page refresh.
No data leaves the browser. There is no backend — everything you type stays on your device. The only network requests are for the two code-generating libraries loaded from a CDN.
Just open index.html in a browser (or serve the folder with any static server).
| File | Purpose |
|---|---|
index.html |
Label layout + CDN library tags |
style.css |
Borders, cell dividers, placeholders, print & multi-up rules |
app.js |
Barcode/QR generation, persistence, layout/copies, print-sheet |
Public domain — The Unlicense. No restrictions of any kind: copy, modify, publish, use, compile, sell, or distribute it for any purpose, commercial or not, with no attribution required. Do whatever you want with it.