https://github.com/ecto/vcad
Parametric CAD in Rust — CSG modeling with multi-format export
https://github.com/ecto/vcad
Last synced: 3 months ago
JSON representation
Parametric CAD in Rust — CSG modeling with multi-format export
- Host: GitHub
- URL: https://github.com/ecto/vcad
- Owner: ecto
- License: mit
- Created: 2026-01-27T18:00:14.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2026-03-28T04:14:45.000Z (3 months ago)
- Last Synced: 2026-03-28T07:37:53.557Z (3 months ago)
- Language: Rust
- Homepage: https://vcad.io
- Size: 32.3 MB
- Stars: 314
- Watchers: 2
- Forks: 14
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.json
- License: LICENSE
Awesome Lists containing this project
README
# vcad
Open-source parametric CAD for the AI era.
**[Try it now →](https://vcad.io)**

## Features
- **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
## Use vcad
### Web App
Visit [vcad.io](https://vcad.io) — no install required.
### CLI
```bash
cargo install vcad-cli
vcad export input.vcad output.stl
vcad import-step input.step output.vcad
```
### MCP Server (AI Agents)
The MCP server lets AI agents create and manipulate CAD models:
```bash
npm install -g @vcad/mcp
```
Tools: `create_cad_document`, `export_cad`, `inspect_cad`, `gym_step`, `gym_reset`
### Rust Library
```rust
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](crates/vcad-kernel) for the full API.
## Architecture
```
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
```
## Development
```bash
# Rust
cargo test --workspace
cargo clippy --workspace -- -D warnings
# TypeScript
npm ci
npm run dev -w @vcad/app # Run web app locally
```
## License
[MIT](LICENSE)