# Launch HN: Adam (YC W25) – Open-Source AI CAD

> Source: <https://github.com/Adam-CAD/CADAM>
> Published: 2026-06-17 16:14:04+00:00

**👉 adam.new/cadam**. Generate a CAD model in seconds, right in your browser. No install required.

- 🤖
**AI-Powered Generation**- Transform natural language and images into 3D models - 🎛️
**Parametric Controls**- Interactive sliders for instant dimension adjustments - 📦
**Multiple Export Formats**- Export as .STL, .SCAD, or .DXF files - 🌐
**Browser-Based**- Runs entirely in your browser using WebAssembly - 📚
**Library Support**- Includes BOSL, BOSL2, and MCAD libraries

| Feature | Description |
|---|---|
Natural Language Input |
Describe your 3D model in plain English |
Image References |
Upload images to guide model generation |
Real-time Preview |
See your model update instantly with Three.js |
Parameter Extraction |
Automatically identifies adjustable dimensions |
Smart Updates |
Efficient parameter changes without AI re-generation |
Custom Fonts |
Built-in Geist font support for text in models |

A showcase of what CADAM builds from a single plain-language description — from full multi-part machines down to clean parametric parts. Each model below started from the prompt shown and came out as fully parametric OpenSCAD, ready to export as `.STL`

, `.SCAD`

, or `.DXF`

. The source and a short write-up for each live in [ benchmarks/](/Adam-CAD/CADAM/blob/master/benchmarks); the orbiting previews are rendered with

[.](/Adam-CAD/CADAM/blob/master/benchmarks/render.sh)

`benchmarks/render.sh`

| Model | Prompt | Controls | Output |
|---|---|---|---|
V8 engine |

8 colors

**9-cylinder radial aircraft engine** 6 colors

**Turbofan jet engine** 10 colors

**Axial turbine blisk** 1 color

| Model | Prompt | Controls | Output |
|---|---|---|---|
Twisted hexagonal vase |

1 color

**Knurled control knob** 2 colors

**Hex bolt & nut — real threads** 2 colors

**Honeycomb lightweight bracket** 1 color

**NACA 2412 tapered wing** 1 color

**Threaded jar & screw-on lid** 2 colors

**Right-angle bevel gear drive** 3 colors

**Centrifugal pump impeller** 1 color

**Herringbone planetary gear stage** 4 colors

```
# Clone the repository
git clone https://github.com/Adam-CAD/CADAM.git
cd CADAM

# Install dependencies
npm install

# Start Supabase
npx supabase start
npx supabase functions serve --no-verify-jwt

# Start the development server
npm run dev
```

- Node.js ^20.19.0 or >=22.12.0, with npm 10+
- Supabase CLI
- ngrok (for local webhook development)

- Copy
`.env.local.template`

to`.env.local`

- Update all required keys in
`.env.local`

:

```
VITE_SUPABASE_ANON_KEY="<Test Anon Key>"
VITE_SUPABASE_URL='http://127.0.0.1:54321'
```

- Add server-side keys to
`.env.local`

, including:

```
ANTHROPIC_API_KEY="<Test Anthropic API Key>"
OPENROUTER_API_KEY="<Test OpenRouter API Key>"
OPENAI_API_KEY="<Test OpenAI API Key>"
GOOGLE_API_KEY="<Test Google API Key>"
FAL_KEY="<Test FAL API Key>"
SUPABASE_SERVICE_ROLE_KEY="<Test Service Role Key>"
BILLING_SERVICE_URL="<Test Billing Service URL>"
BILLING_SERVICE_KEY="<Test Billing Service Key>"
ENVIRONMENT="local"
ADAM_URL="<Adam URL or dev URL>" # Checkout and portal redirect target
WEBHOOK_BASE_URL="<Public TanStack App URL>" # Your app URL for /cadam/api callbacks
NGROK_URL="<NGROK URL>" # Optional local Supabase Storage tunnel for provider-readable signed URLs
```

CADAM uses public URLs for provider callbacks and local signed storage URLs:

-
Install ngrok if you haven't already:

```
npm install -g ngrok
# or
brew install ngrok
```

-
Start an ngrok tunnel pointing to your TanStack Start dev server:

```
ngrok http 3000
```

-
Copy the generated ngrok URL (e.g.,

[https://xxxx-xx-xx-xxx-xx.ngrok.io](https://xxxx-xx-xx-xxx-xx.ngrok.io)) and add it to your`.env.local`

file:

```
WEBHOOK_BASE_URL="https://xxxx-xx-xx-xxx-xx.ngrok.io"
```

-
If a provider must fetch local Supabase Storage signed URLs, run a second tunnel to Supabase and set

`NGROK_URL`

to that URL. -
Ensure

`ENVIRONMENT="local"`

is set in the same file.

```
npm i
npx supabase start
npm run dev
```

**Frontend:** React 19 + TypeScript + TanStack Start + Vite**3D Rendering:** Three.js + React Three Fiber**CAD Engine:** OpenSCAD WebAssembly**Backend:** TanStack Start server routes + Supabase PostgreSQL/Auth/Storage**AI:** Anthropic Claude API**Styling:** Tailwind CSS + shadcn/ui**Libraries:** BOSL, BOSL2, MCAD

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also [open an issue](https://github.com/Adam-CAD/CADAM/issues).

See the [CONTRIBUTING.md](/Adam-CAD/CADAM/blob/master/CONTRIBUTING.md) for instructions and [code of conduct](/Adam-CAD/CADAM/blob/master/CODE_OF_CONDUCT.md).

This app wouldn't be possible without the work of:

This distribution is licensed under the GNU General Public License v3.0 (GPLv3). See `LICENSE`

.

Components and attributions:

- Portions of this project are derived from
`openscad-web-gui`

(GPLv3). - This distribution includes unmodified binaries from OpenSCAD WASM under
GPL v2 or later; distributed here under GPLv3 as part of the combined work.
See
`src/vendor/openscad-wasm/SOURCE-OFFER.txt`

.

Live chart by RepoStars — click for the interactive version.
