Status: Phase 0 physical domain discovery and repository validation. The repository contains hand-authored geometry references for the letters I and O. No generated pattern compiler exists yet, and these references are not validated sewing patterns.
- Node.js 24.12 or newer in the Node 24 line;
.node-versionpins 24.18.0 because the repository requires Node's built-in TypeScript stripping - npm 11 or a compatible npm release
Install the exact dependency versions recorded in package-lock.json:
npm installnpm test
npm run typecheck
npm run validate
npm run checknpm run check runs the complete Phase 0 repository baseline: TypeScript checking, automated tests, fixture validation, winding assertions, and SVG reference checks.
- Read
PROJECT_BRIEF.md, thenVERSION_MANIFEST.mdfor the phased plan and its exit criteria. - Follow the Phase 0 protocol.
- Print or redraw the I and O reference outlines.
- Sew one physical I and one physical O.
- Record results using
docs/PHYSICAL_TEST_LOG_TEMPLATE.md.
VERSION_MANIFEST.md sequences the project from this Phase 0 baseline through a full A–Z and
0–9 charset, each phase with its own exit criteria:
| Phase | Delivers | Letters |
|---|---|---|
| v0.0 (active) | physical domain discovery, manufacturing tolerance | I, O |
| v0.1 | seam-line geometry core — normalization, flattening, compiler, SVG export | I, O |
| v0.2 | first sewable output — seam allowance, notches, mirrored back panel, tiled PDF | + L |
| v0.3 | representative-letter prototype with manufacturability diagnostics | + A, B, S |
| v0.4 | font adapter, proving the architecture boundary holds | same six |
| v1.0 | full charset with documented manufacturability limits | A–Z, 0–9 |
The letter set is chosen by geometric feature coverage rather than alphabet order; see
docs/LETTER_CLASSES.md. docs/SPEC_V0_1.md is the current technical specification for the
next phase, including calibrated tolerance constants and golden fixture values. Rationale for
each roadmap and architecture decision is recorded in docs/DECISIONS.md.
- I: a clean, single-outer-contour rectangular template at 300 × 120 mm
- O: a 300 × 220 mm outer contour with one 180 × 100 mm opening
The O normalization input deliberately winds its outer and inner contours in the same direction. The expected canonical output records the opposite winding signs required by contour role; it is an acceptance fixture, not output from an implemented normalizer.
Before cutting any fabric in Phase 0:
- Print the reference SVGs at 100% / actual size with "fit to page" disabled.
- These references are larger than one A4 or US Letter sheet, and this repository does not implement tiled-page export. Print on sufficiently large paper, or use a printer/application whose poster-tiling output you have verified at actual size.
- Measure the calibration mark before using the pattern. Measure between the centerlines of opposite 0.1 mm rules; the horizontal and vertical distances must each be exactly 50 mm. If either is not, every measurement in the physical test log will be contaminated by an unknown scale error.
- The printed outlines are seam lines only. Add 10 mm seam allowance by hand: outward on outer edges, toward the hole's center on the letter O's inner contour.
There is no native A4, US Letter, PDF, or tiled-page export. The reference SVGs are larger than common single sheets and must be printed on sufficiently large paper or through independently verified poster tiling.
docs/— physical experiment and design decisionsdocs/DECISIONS.md— decision log with reasoning for each architecture and roadmap choicedocs/LETTER_CLASSES.md— geometric feature classes and the representative letter setdocs/SPEC_V0_1.md— technical specification for the next phase (geometry core)fixtures/templates/— clean, hand-authored template geometryfixtures/normalization/input/— deliberately dirty normalization acceptance-test inputsfixtures/normalization/expected/— canonical expected outputs, not generated artifactsreference/— simple SVG outlines for visual checkingsrc/types.ts— initial source-neutral canonical modelsrc/tolerances.ts— distinct digital numeric concepts and unresolved manufacturing tolerancescripts/andtests/— automated repository verification
Licensing has not yet been decided. No license is granted or implied by this repository baseline.