What is it

NASSCAD is a full parametric 3D CAD application that lives inside a single HTML file. No installer, no account, no backend, no npm, no build step. Open it in Firefox or Chrome — even straight from file:// — and you have a working CAD environment: primitives, boolean CSG, full STEP AP242 import/export, and a live scripting console.

The constraint was deliberate: zero dependencies, zero toolchain, one file you can drop on a USB stick and it still works in ten years.

Why it exists

Most "free" browser CAD tools are actually thin clients for a cloud backend — your files live on someone else's server, and the tool disappears the day the company pivots. NASSCAD works fully offline, keeps everything local, and the whole engine is portable enough to survive as a single artifact.

Core capabilities

18 watertight parametric primitives — including threaded fasteners (ISO 68-1 / ASME screws, ISO 4032/4033 nuts) generated from real thread geometry, not just visual approximations
Boolean CSG via Manifold (WASM) — guaranteed manifold output, no leaking meshes
STEP AP242 import/export via OpenCASCADE WASM — multi-body assemblies round-trip cleanly with Fusion 360 and FreeCAD
NassScript — a full-access JS console scripting layer for parametric/programmatic modeling
Multi-format export — STL, OBJ, 3MF, GLB, STEP
Adaptive STEP import — 3-pass adaptive sewing tolerance (0.001 → 0.01 → 0.1mm) to recover real-world files with dirty geometry

Real-world stress test

Cubes and cylinders are easy. So we threw a real mechanical assembly at it: the Stealthburner CW2 Assembly from Voron Design (GPL-3.0) — a 198-part multi-body STEP file with fasteners, brackets, and non-trivial thread geometry.

NASSCAD's STEP importer resolved it into 198 individually selectable, editable objects (577k vertices / 192k faces), each one still a distinct solid you can move, hide, or boolean against — not a single fused mesh blob. It even auto-flagged one non-manifold sub-mesh instead of silently corrupting it. All of this running client-side, in a browser tab, from a local file.

On top of real-world hardware files, NASSCAD's importer also cleanly handles NIST's official STEP conformance test files — the reference dataset used to validate AP203/AP242 interoperability across CAD software. Passing both a messy real-world assembly and a standards-conformance suite is a different bar than a toy STEP parser.

Model credit: Voron Design — Stealthburner CW2 Assembly, https://github.com/VoronDesign/Voron-Stealthburner (GPL-3.0)

Tech stack

Three.js for the viewport, OpenCASCADE.js (WASM) for B-rep/STEP, Manifold (WASM) for CSG — all bundled inline as base64 into one HTML file via a custom Python packaging step for development. No React, no bundler at runtime, no CDN dependency at load time.

Try it

Free for non-commercial use. Works offline once loaded. No account needed.
https://www.nasscad.com/NASSCAD_V4_3_0.htm

About the creator

Built solo, nights and weekends, by a self-taught developer and electronics technician — no CS degree, no team, no funding. Everything in NASSCAD was learned by building it. Development follows an AI-assisted workflow: architecture, decisions, and debugging strategy are human-driven; Claude (Anthropic) executes as a coding tool under direction — not autopilot, not vibe-coding.

License

CC BY-NC 4.0 — free for personal, educational, and non-commercial use. Commercial licensing available on request.