CAD-as-code that stays portable
InvariantCAD is a TypeScript library for describing parametric designs as immutable, versioned JSON and evaluating them with replaceable geometry kernels. Use the fast bundled Manifold mesh runtime for everyday modeling or select the OpenCascade backend for exact B-Rep geometry and STEP/BREP exchange.Build your first model
Author a parameterized plate, evaluate it, inspect measurements, and export
an STL.
Understand the architecture
Learn how builders, documents, evaluators, kernels, and owned results fit
together.
Choose a kernel
Compare Manifold, stock OpenCascade, and the optional owned OCCT facade.
Check feature support
See the exact 0.1 capability boundary before selecting a workflow.
What you can build in 0.1
- Parameterized primitives, sketches, extrusions, revolutions, and transforms
- Mesh and exact Boolean operations
- Exact bounded ruled lofts and line/arc path sweeps
- Selector-driven fillets, chamfers, shells, offsets, and draft
- Parts, materials, nested assemblies, named configurations, and BOMs
- Semantic and persistent topology selections for faces, edges, and vertices
- Volume, area, centroid, inertia, density-aware mass, and gyration analysis
- Deterministic documents, migrations, impact reports, and feature hashes
- STL, OBJ, STEP, and BREP exchange
InvariantCAD 0.1 is an early public foundation, not a claim that every CAD
domain is already implemented. Drawings, GD&T, mates, sheet metal, CAM, CAE,
and advanced surfacing remain on the roadmap.
A deliberately split architecture
InvariantCAD separates design intent from geometry execution:- A design document never contains a WASM pointer, native handle, or backend object.
- The same validated document can be evaluated by different conforming kernels.
- Serialization, review, hashing, migration, and build automation do not need a geometry process.
- Native resources remain evaluation-scoped and must be disposed explicitly.
Pick a path
New to InvariantCAD
Install the package and confirm your runtime requirements.
Building exact CAD
Configure OCCT and understand stock versus owned-facade guarantees.
Integrating a pipeline
Store, migrate, validate, hash, evaluate, and export documents safely.
Package entry points
Continue with the quickstart, or use the
complete 0.1 guide when you want every current
behavior and boundary in one page.