Skip to main content
OpenGeometry is an open-source CAD kernel for the browser. It models B-rep solids, runs boolean operations, builds solids by extrude, sweep and revolve, and writes STEP files. The kernel is written in Rust and compiled to WebAssembly. A TypeScript SDK puts every body straight into a Three.js scene. These pages describe OpenGeometry 3.0. The npm package is opengeometry.

What you can build

Use OpenGeometry for browser CAD, configurators and geometry-heavy web tools: a parametric modeller, a solid modelling workflow, a geometry viewer or a custom Three.js modelling tool. It is the geometry engine, not a full CAD application. It also fits AI-assisted CAD. An assistant or an agent proposes the modelling steps. OpenGeometry runs the geometry, the booleans and the exports, and gives the same result for the same input.

What 3.0 has

What 3.0 does not have

IFC file text, STL and PDF export, projection, loft, triangulation as a public call, curves other than lines, circles, arcs and polylines, such as the elliptical arc, and the 2.0 classes such as Cuboid, Polygon, Opening and Vector3. Code that uses them is written for 2.0. 3.0 has no spline, no ellipse and no elliptical arc. Build a wedge as a five-face OG_PRIMITIVE_POLYHEDRON, and a 2.0 Curve as an OG_PRIMITIVE_POLYLINE wire through its points. See Migrate from 2.0.

Next steps

Install

Add the package and serve its two files.

Quickstart

Cut a door into a wall and export it as STEP.

Concepts

How the kernel, the SDK and your scene fit together.

Use a coding agent

Give an assistant the rules that matter.
Last modified on November 10, 2026