Skip to main content

classcad 21.2.0·headless


ClassCAD is a headless CAD runtime built cross-platform in C++. It runs stand-alone, serves apps and applications through WebSockets and HTTP/S, or embeds directly through its WASM binary.

264 methods7 domains3 runtimes5 platforms →

05Kernel & solverSMLib NURBS · LGS constraints04Services35 plugins: STEP, DXF, glTF…CCVM03CCVMbytecode on its own VM02Its own CAD language696 classes, compiledapi.v1.part.assembly.sketch.solid.curve.common.drawing2d01api.v1264 methods, 7 domains

01One API

The client-side API interfacing with ClassCAD is available in three languages: JavaScript/TypeScript, Python* and .NET*. And in one unified shape: api.<version>.<domain>.<method>({ … })

* Python and .NET are experimental for now.

api.v10 methods

  • .part0
  • .assembly0
  • .sketch0
  • .common0
  • .curve0
  • .solid0
  • .drawing2d0
api.v1.part.booleanapi.v1.part.boxapi.v1.part.calculateMassPropertiesapi.v1.part.chamferapi.v1.part.circularPatternapi.v1.part.coneapi.v1.part.createapi.v1.part.cylinderapi.v1.part.expressionapi.v1.part.extrusionapi.v1.part.filletapi.v1.part.importFeatureapi.v1.part.linearPatternapi.v1.part.mirrorapi.v1.part.revolveapi.v1.part.rotationapi.v1.part.sketchapi.v1.part.sliceapi.v1.part.sliceBySheetapi.v1.part.sphereapi.v1.part.translationapi.v1.part.twistapi.v1.part.updateExpressionapi.v1.part.workAxisapi.v1.part.workCSysapi.v1.part.workPlaneapi.v1.part.workPoint
The reference, method by method →

The runtime

Supported interfaces.

There are various ways to run and interface with ClassCAD. It is cross-platform and multilingual. It adapts to servers, native and mobile apps as well as to websites. You’ll find our JavaScript/TypeScript/React SDK at buerli.io.

your appjs
  1. // buerli: our higher-level JavaScript SDK
  2. import { init, WASMClient, BuerliCadFacade } from '@buerli.io/classcad'
  3. init(id => new WASMClient(id, { token: 'ccpk_…' }))
  4. const facade = new BuerliCadFacade()
  5. await facade.connect()
  6. const part = await facade.api.v1.part.create({ name: 'Flange' })
  7. // the model as a three.js scene: groups, meshes and materials
  8. const { scene } = await facade.createScene(part)

02Features

ClassCAD is what translates the SMLib CAD kernel and the LGS constraint solver into a referenceable history graph and constrained sketches. Every generated face, edge and vertex remembers where it came from, so a change to one feature won’t upset the features built on top of it, or referenced geometry in features and sketches.

0 features

api.v1.part

History-based modelling. Every call adds a feature to the part’s history, and the part replays it when a value changes. Part API →

Part or Solid?

The Part API works with features and keeps track of the bodies they make. The Solid API works on the bodies themselves, inside one feature, with no history of its own. Part API versus Solid API →

03Parametric

Any value in a model can be an expression. Drag a value below: the bolt circle, the holes and the section all follow. Constraints keep the design intent.

Ø 926 × Ø 8.3 on Ø 6012A–A

Expressionsdrag a value

od
bore
n
t
pcd
(od + bore) / 260
d
0.09 * od8.3
≤
bore ≤ od − 48holds

part.updateExpression · the history replays

04Multi-client · new

A session can be shared. Invite others into it, to edit or only to view. Clients can be people or agents, working side by side: each change lands for all of them at once, and each sees where the others point and look.

* Coming soon: comments and annotations pinned to geometry (we are still testing).

05Exports

ClassCAD supports various file formats. It has its own parametric, history-based format, OFB, and SCG: the feature tree with its values and triangulated meshes, a partial history for display.

In · common.load

  • OFBits own: the whole history
  • STEPfrom any CAD system
  • STLas a mesh, for display

Out · common.save · drawing2d

  • OFBhistory, expressions, all of it
  • STEPAP203 · AP214 · AP242
  • DXFR2000 to 2013, and drawings
  • SVGdrawings, hidden lines removed
  • STLfor printing
  • SCGfeature tree and meshes, for display

06Lineage

ClassCAD was drafted a long time ago. It grew through customer relations and joint ventures.

RevDescriptionDate
AAn extension inside AutoCAD, written on ObjectARX.—
BOnto the ACIS kernel.—
COnto SMLib, a NURBS kernel. Still its kernel, twenty years on.—
DEvery line kept in git: 9,265 commits in the runtime, 4,487 in the classes.since 2010
EInside TDM’s tool data management, for thousands of users.—
F21.0.02025-12-12
G21.1.02026-04-01
H21.2.0: Windows, Linux x64 and arm64, WebAssembly, Docker.2026-06-25
ClassCADAWV Informatik AG · St. Gallensheet 1 / 1

07Get it

01 · Account

Two weeks of Solo.

Sign up and confirm your email: the MCP, the editor and your own code run the engine, with everything in Solo for two weeks.

Sign up

02 · Plan

Priced to be used.

  • Freenon-commercial use, on your machine
  • Solocommercial use
  • Proon your own domain
  • Businessservers, any domain
Plans