
Packing Slip — rendered output
data.json first; the totals row and the label/delivery-note weights must stay consistent (they reconcile across the logistics chain R-07 → QA-2026-2087 → PS-88214 → the label → DN-40118).
Engine features exercised: quantity-accounting table with subtotal row, flex column split, single-page fill.
Render it:
npx @formepdf/html templates/packing-slip/index.html -o packing-slip.pdf
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Packing slip PS-88214 — Northmoor Industrial Group, Inc.</title>
<link rel="stylesheet" href="../northmoor-shared.css">
<link rel="stylesheet" href="style.css">
</head>
<body>
<div class="sheet">
<div class="pagefill">
<header>
<div class="atop"></div>
<div class="hd">
<div class="mast-left">
<div class="mark">N</div>
<div>
<div class="wm">Northmoor</div>
<div class="sub" style="margin-top: 3pt">Shipping — Dock 2</div>
</div>
</div>
<div class="addr" style="text-align: right">2200 Lyell Avenue<br>Rochester, NY 14606<br>(585) 274-0180 ext. 610</div>
</div>
<div class="hr2" style="margin-top: 15pt"></div>
<div class="dochead">
<div>
<div class="lbl lbl-accent" style="margin-bottom: 7.5pt">Shipping · no prices shown</div>
<h1 class="dtitle">Packing slip</h1>
</div>
<div style="text-align: right">
<div class="lbl" style="margin-bottom: 5.25pt">Slip number</div>
<div class="refnum">PS-88214</div>
</div>
</div>
</header>
<div class="meta meta-ps">
<div><div class="lbl">Sold to</div>Brightwater Foods LLC<br>2140 Carnegie Avenue<br>Cleveland, OH 44115</div>
<div><div class="lbl">Ship to</div>Brightwater Foods LLC<br>Plant 2 — Receiving Dock 4<br>3900 Harvard Road<br>Cleveland, OH 44105</div>
<div><div class="lbl">Ship date</div>07 September 2026<div class="lbl" style="margin-top: 9pt">Purchase order</div>44-7712</div>
<div><div class="lbl">Carrier / pro</div>Erie Valley Freight<br>7742-118-04<div class="lbl" style="margin-top: 9pt">Release</div>R-07 · 3 pieces, 418 lb</div>
</div>
<table class="t lines">
<thead><tr><th scope="col" style="width: 33pt">Line</th><th scope="col" style="width: 78pt">Part</th><th scope="col">Description</th><th scope="col" class="num" style="width: 52.5pt">Ordered</th><th scope="col" class="num" style="width: 52.5pt">Shipped</th><th scope="col" class="num" style="width: 58.5pt">Back order</th><th scope="col" style="width: 48pt">Package</th></tr></thead>
<tbody>
<tr><td>01</td><td>4471-A-C</td><td>Skid frame, welded tube, 96 × 48 in, primed<br><span class="dim">Serials NM-20918-41 to 48</span></td><td class="num">8</td><td class="num">8</td><td class="num">0</td><td>Crate 1</td></tr>
<tr><td>02</td><td>4471-G</td><td>Guard panel, perforated steel, powder coat black</td><td class="num">24</td><td class="num">24</td><td class="num">0</td><td>Crate 2</td></tr>
<tr><td>03</td><td>4471-B-C</td><td>Mounting bracket, machined</td><td class="num">40</td><td class="num">32</td><td class="num">8</td><td>Crate 3</td></tr>
<tr><td>04</td><td>HW-0812</td><td>Fastener kit, stainless 316, per frame</td><td class="num">8</td><td class="num">8</td><td class="num">0</td><td>Crate 3</td></tr>
<tr><td>05</td><td>DOC-QA</td><td>Inspection record QA-2026-2087 and material certificates</td><td class="num">1</td><td class="num">1</td><td class="num">0</td><td>Envelope</td></tr>
<tr class="gsub"><td></td><td></td><td>Lines shipped complete: 4 of 5</td><td class="num">81</td><td class="num">73</td><td class="num">8</td><td></td></tr>
</tbody>
</table>
<div class="bocols">
<div class="bo"><div class="lbl" style="margin-bottom: 5.25pt">Back order</div>Eight mounting brackets are held pending rework of the bore on the Elkhart-sourced housings. They will ship no later than 18 September 2026 at our cost, on packing slip PS-88291. No further order is required.</div>
<div class="pkg">
<div class="lbl" style="margin-bottom: 5.25pt">Package detail</div>
<table class="t small-t">
<thead><tr><th scope="col">Piece</th><th scope="col">Contents</th><th scope="col" class="num">Weight</th></tr></thead>
<tbody>
<tr><td>Crate 1</td><td>Frames, 8</td><td class="num">246 lb</td></tr>
<tr><td>Crate 2</td><td>Guard panels, 24</td><td class="num">112 lb</td></tr>
<tr><td>Crate 3</td><td>Brackets and hardware</td><td class="num">60 lb</td></tr>
</tbody>
</table>
</div>
</div>
<div class="pagefill-spacer"></div>
<footer class="foot">
<div style="flex-grow: 1">Check the count against this slip before signing the carrier's delivery receipt. Shortages or visible damage must be noted on the receipt and reported to us within ten days.</div>
<div>PS-88214</div>
</footer>
</div>
</div>
</body>
</html>
/* packing-slip — shipping document, no prices shown. */
@page {
size: Letter;
margin: 52.5pt 57pt 40.5pt;
@bottom-left {
content: "Packing slip PS-88214 · PO 44-7712 · Release R-07";
font-family: Helvetica, Arial, sans-serif;
font-size: 5.625pt;
letter-spacing: 0.14em;
text-transform: uppercase;
color: #8A857E;
}
@bottom-right {
content: "Page " counter(page) " of " counter(pages);
font-family: Helvetica, Arial, sans-serif;
font-size: 5.625pt;
letter-spacing: 0.14em;
text-transform: uppercase;
color: #8A857E;
}
}
.sheet { position: relative; }
.atop { position: absolute; top: -52.5pt; left: -57pt; right: -57pt; height: 3pt; background-color: #7B2233; }
.meta-ps { grid-template-columns: 1.3fr 1.3fr 1fr 1fr; }
.lines { margin-top: 21pt; }
.bocols { display: flex; gap: 22.5pt; margin-top: 19.5pt; }
.bo { width: 55%; font-size: 7.125pt; line-height: 1.7; }
.pkg { width: 45%; }
.small-t { font-size: 6.75pt; }
northmoor-shared.css alongside them — the set’s shared spine (type scale, tables, signature blocks, the accent).
Sample data (data.json)
Sample data (data.json)
data.json
{
"slipNumber": "PS-88214",
"shipDate": "07 September 2026",
"purchaseOrder": "44-7712",
"carrier": "Erie Valley Freight",
"pro": "7742-118-04",
"release": "R-07 · 3 pieces, 418 lb",
"soldTo": "Brightwater Foods LLC, 2140 Carnegie Avenue, Cleveland, OH 44115",
"shipTo": "Brightwater Foods LLC, Plant 2 — Receiving Dock 4, 3900 Harvard Road, Cleveland, OH 44105",
"lines": [
{
"line": "01",
"part": "4471-A-C",
"description": "Skid frame, welded tube, 96 × 48 in, primed",
"serials": "NM-20918-41 to 48",
"ordered": 8,
"shipped": 8,
"backOrder": 0,
"package": "Crate 1"
},
{
"line": "02",
"part": "4471-G",
"description": "Guard panel, perforated steel, powder coat black",
"ordered": 24,
"shipped": 24,
"backOrder": 0,
"package": "Crate 2"
},
{
"line": "03",
"part": "4471-B-C",
"description": "Mounting bracket, machined",
"ordered": 40,
"shipped": 32,
"backOrder": 8,
"package": "Crate 3"
},
{
"line": "04",
"part": "HW-0812",
"description": "Fastener kit, stainless 316, per frame",
"ordered": 8,
"shipped": 8,
"backOrder": 0,
"package": "Crate 3"
},
{
"line": "05",
"part": "DOC-QA",
"description": "Inspection record QA-2026-2087 and material certificates",
"ordered": 1,
"shipped": 1,
"backOrder": 0,
"package": "Envelope"
}
],
"totals": {
"linesComplete": "4 of 5",
"ordered": 81,
"shipped": 73,
"backOrder": 8
},
"backOrderNote": "Eight mounting brackets are held pending rework of the bore on the Elkhart-sourced housings. They will ship no later than 18 September 2026 at our cost, on packing slip PS-88291. No further order is required.",
"packages": [
[
"Crate 1",
"Frames, 8",
"246 lb"
],
[
"Crate 2",
"Guard panels, 24",
"112 lb"
],
[
"Crate 3",
"Brackets and hardware",
"60 lb"
]
]
}
MIT-licensed, free to copy — source on GitHub. Passes PDF/UA-1 validation (veraPDF) in CI; validation is a floor, not a certification.