# TagProof family production kit

Four configurable blanks (round/rectangle, two example sizes each), three actual outline fonts, one or two faces and up to four lines per face. Open the free web workspace at https://workfolio-studio.pages.dev/tagproof/family .

Run locally with Node.js 24 or later; no package installation, API call or paid service is needed:

```
node run.mjs --templates
node run.mjs sample.csv output.zip blank-rules.json
node import-shopify.mjs authorized-order.json mapped.csv
node run.mjs mapped.csv customer-review.zip blank-rules.json
```

The importer reads a supplied Shopify-style order JSON, without contacting Shopify. Only explicitly named `TagProof ` line-item properties are copied. Billing names, addresses and phones are not engraving instructions and are never mapped. Export IDs as text when necessary; zero current quantities are retained and then rejected for review, not treated as new paid quantities. Customer orders stay private.

`sample-delivery.zip` and `sample/` are actual original fictional outputs. One deliberately invalid row has no proof. The separate HTML proof for each valid item contains its faces and original text. SVG files under `outlines/` contain text paths in millimetres; `references/` adds guides. Back faces are not mirrored. No laser settings, cut paths, fabrication suitability or customer approval is asserted. A geometry pass cannot approve a machine job.

`tagproof-properties.liquid` is a source snippet for an agreed product in a duplicate unpublished theme. It is not already installed. Before an actual shop installation, map real variants to real blanks, verify the theme’s add-to-cart behaviour (including accelerated checkout), inspect stored properties, export them through an authorized existing workflow, test two different tags in the same order, obtain customer proof approval, and obtain fabrication acceptance. Do not assume the shop’s regular order CSV contains customization fields. The assistant performs this implementation and testing once the shop supplies the permitted test environment; the shop supplies access and approves its own product facts.

Recorded QA: ten tests, 48 shape/font/line combinations, 100 two-face item archive, correct quantity and character handling. No actual Shopify shop or fabrication machine was used. Browser interaction and human proof acceptance are not represented by the automated checks.

Limits: 100 items, 250 KB CSV, supported uppercase characters only, four configured blanks, fixed top-centre hole. Do not silently transform other alphabets or substitute missing customer text. Font credits and source licences are in FONT-LICENSES.txt.
