TAU/ DOCS

Choose a Kernel

Select and compose first-party CAD kernel plugins.

Pick kernels by source language or import format, and install only the packages your host needs.

Kernel packageInputBest fit
@taucad/replicadTypeScript/JavaScript using ReplicadHigh-level parametric BRep
@taucad/opencascadeTypeScript/JavaScript using OCCT bindingsDirect BRep and topology control
@taucad/manifoldTypeScript/JavaScript using ManifoldMesh-first robust booleans
@taucad/jscadTypeScript/JavaScript using JSCADCSG modeling
@taucad/openrscadOpenSCAD.scad models in browser or Node
@taucad/zooKCLConfigured remote Zoo execution
@taucad/gltfglTF/GLBglTF interchange with optional Draco
@taucad/brepSTEP/STP/IGES/IGS/BREPBRep-family file import
@taucad/rhino3DMRhino file import
@taucad/assimpMesh and scene formatsOBJ, FBX, STL, PLY, DAE, and related imports
@taucad/build123dPython using Build123dNative desktop BRep, topology, and STEP
@taucad/tscircuitTSX using tscircuitElectronics: 3D board, schematic, PCB, BOM

There is no catch-all Tau kernel. Every first-party import extension has one explicit owner.

Compose toolkits

Pass one factory per package to defineRuntime. Source-code kernels need a bundler beside them; file-import kernels such as gltf(), brep(), rhino(), and assimp() do not:

import { defineRuntime } from '@taucad/runtime/worker';
import { esbuild } from '@taucad/esbuild';
import { manifold } from '@taucad/manifold';
import { replicad } from '@taucad/replicad';

export const modelingRuntime = defineRuntime({ plugins: [esbuild(), replicad(), manifold()] });

Configure a packaged capability

Presets select capability sets — assimp({ preset: 'import' }) installs only the import kernel, leaving the export transcoder out. Role-nested options configure the factories the preset selects:

import { defineRuntime } from '@taucad/runtime/worker';
import { zoo } from '@taucad/zoo';

export const runtime = defineRuntime({
  plugins: [zoo({ kernels: { default: { baseUrl: 'wss://example.com/v1/kernels/zoo' } } })],
});

Use a direct role factory instead for app-local capabilities, isolated tests, or when a whole role must interleave outside plugin expansion.

Choose Build123d only in a native host

Build123d needs a packaged CPython payload and a project trust grant, so only a native host such as Tau Desktop can advertise it. Its .py files skip the JavaScript bundler entirely -- see Build123d for the authoring contract.

Choose tscircuit for electronics

A .tsx or .jsx file exports a board component. Rendering is offline: local autorouter, no parts engine; URL footprints and models are never fetched; each attempt or kicad:/jlcpcb: reference becomes a warning. See tscircuit for the authoring contract and install steps.

On this page