Repository navigation
BREPcode v0.1.7
Your model keeps its recipe
STL and 3MF now carry the BREPcode that built them. Import one back and BREPcode offers to reopen it as editable code instead of frozen triangles — every dimension live again. In a 3MF it's a plain text part any unzip tool can read; in an STL it's base64 after endsolid. Neither adds or moves a single triangle, and no other tool notices.
Generated code that actually runs
- Variables named after BREPcode words no longer kill the model.
const fins = [...]was aSyntaxErrorthrown before a single line ran — past the reach of every repair. Your declaration now simply wins. - The prompt is explicit about the two things it was leaving to chance: the last line must be
return <shape>, and don't name a variable after a BREPcode word.
Blueprints
- Assemblies (
group(...)) export instead of failing with "unknown node kind". - Curved unions (a sphere fused with a torus) export instead of dying on an empty projection.
- Dimensions now match the app. A part the viewer measured at 72.0 mm was stamped 77.9 on its drawing — OCCT's bounding box is a loose bound on curved solids. The measured size wins.
Chat
The assistant receives the model's measured bounding box alongside your code. "Make it 30% narrower" on an imported mesh is arithmetic now, not a guess.
Safety
A public site build no longer includes locked-key.js — a password-locked key is meant for one person, not a public host. Use --with-locked-key for a private hand-off. And a missing key file no longer prevents the app from starting at all, which is the state a fresh clone was always in.
BREPcode-site.zip is the self-contained static site — unzip it onto any host. Everything runs client-side; no server, no upload of your models.
29 test suites, all green.