Open-source parametric CAD for the AI era.
- Modeling — Primitives, booleans, fillets, chamfers, shell
- Sketching — 2D constraints, extrude, revolve, sweep, loft
- Assembly — Parts, instances, joints, forward kinematics
- Simulation — Physics with Rapier3D, gym-style RL interface
- Import/Export — STEP import, STL/GLB/STEP/DXF export
- Rendering — Direct BRep ray tracing + tessellated mode
- Cloud — Supabase sync with Google/GitHub auth
Visit vcad.io — no install required.
Download the installer for your platform from the latest release:
- macOS — universal
.dmg(Intel + Apple Silicon) - Windows —
.msiinstaller - Linux —
.AppImage,.deb, or.rpm
Releases are not yet notarized with Apple, so on first launch macOS shows "Apple could not verify 'vcad.app' is free of malware". To open it:
- macOS 15+ — open System Settings → Privacy & Security, scroll to the "vcad was blocked" notice, click Open Anyway, then re-launch vcad.
- Earlier macOS — right-click
vcad.appin/Applicationsand choose Open, then Open in the confirmation dialog. - From Terminal —
xattr -d com.apple.quarantine /Applications/vcad.appremoves the quarantine flag so the app launches normally.
You only need to do this once per install. We'll remove this step once Apple Developer signing is set up.
cargo install vcad-cli
vcad export input.vcad output.stl
vcad import-step input.step output.vcadThe MCP server lets AI agents create and manipulate CAD models:
npm install -g @vcad/mcpTools: create_cad_document, export_cad, inspect_cad, gym_step, gym_reset
use vcad_kernel::Solid;
// Create a box with a hole
let solid = Solid::cube(100.0, 60.0, 20.0);
let hole = Solid::cylinder(10.0, 25.0, 32);
let result = solid - hole;
// Export to mesh
let mesh = result.to_mesh(32);See crates/vcad-kernel for the full API.
vcad/
├── crates/ # Rust BRep kernel (~35K LOC)
│ ├── vcad-kernel/ # Unified API
│ ├── vcad-kernel-topo/ # Half-edge topology
│ ├── vcad-kernel-booleans/# Boolean operations
│ └── ... # 20+ modular crates
├── packages/ # TypeScript
│ ├── app/ # React + Three.js web app
│ ├── mcp/ # MCP server for AI agents
│ └── ...
└── supabase/ # Database migrations
Heads up: vcad depends on the
tangmath workspace at a sibling path (../tang). Clone it next to vcad before anycargocommand, or the workspace will fail to resolve:git clone git@github.com:ecto/tang.git ../tang
# Rust
cargo test --workspace
cargo clippy --workspace -- -D warnings
# TypeScript
npm ci
npm run dev -w @vcad/app # Run web app locally
# Desktop (optional — Tauri v2 shell)
# Ubuntu/Debian system deps:
# sudo apt install libgtk-3-dev libwebkit2gtk-4.1-dev librsvg2-dev \
# libsoup-3.0-dev libatk1.0-dev
# macOS: Xcode command-line tools
# Windows: WebView2 (shipped with Win11)
npm run tauri:dev # launches desktop window against the dev server
npm run tauri:build # produces a signed/unsigned installerCopyright © 2026 Municipal Robotics Corporation
Licensed under the Apache License 2.0. See NOTICE for attributions. Contributions are accepted under the same license per the Apache 2.0 Section 5 inbound-equals-outbound rule.

