Documents (R2, HTML working files)

Key values (from data/titanio_r2.js)

Budget per unit, one size and one finish (buyer allowance, not a quote)

Owner decisions

Release holds (all open)

How to work on this package

1. Change numbers in one place. Every page reads data/titanio_r2.js. The 3D model and the drawings use the same geometry code, lib/geom.js. Costs and masses come from lib/calc.js. Do not type dimensions, masses or prices into a page.

2. Check that everything still agrees.

bun TITANIO_R2/tools/check.js            # data, geometry, costs, workbook, Arabic text, links
bun TITANIO_R2/tools/check.js --render   # also opens every page in English and Arabic in headless Chrome

3. Rebuild the derived files. Part masses and the stability table after a geometry or density change; the workbooks after a cost or BOM change; the viewbook stills after a change to the data, geometry or 3D model (the check reports each one that is out of date).

bun TITANIO_R2/tools/mass_props.js --write   # masses and stability from the geometry
python3 TITANIO_R2/tools/build_xlsx.py       # English and Arabic workbooks
bun TITANIO_R2/tools/bake_renders.js     # about 1 minute; writes renders/*.jpg

4. Export PDFs only for a formal issue. The PDFs go to TITANIO_R2/export/, in English and Arabic (*_AR.pdf).

bun TITANIO_R2/tools/chrome.js pdf

5. Arabic edition. English is the source text. The Arabic text lives in data/ar/*.js, keyed by the exact English text, so a changed English sentence shows as missing Arabic until you translate it. Open any page with ?lang=ar or use the language link. This command lists the missing Arabic entries:

bun TITANIO_R2/tools/chrome.js i18n

The pages open by double-click (no server, no internet). The HTML geometry is a parametric visual and drawing model. It is not B-rep CAD: suppliers still need native CAD and STEP files before tooling.

Concept images