Inspiration

Traditional CAD tools like AutoCAD are expensive, require heavy desktop installation, and often force users to upload drawings to cloud services. Many hobbyists, builders, and small technicians only need quick 2D drafting but are blocked by licensing costs and complicated setup. We wanted a lightweight, privacy‑friendly alternative where drawings stay locally on your device by default.

What it does

CADCraft is an open‑source 2D CAD drafting tool running in the browser. It supports native DXF and DWG import and export, with standard CAD features: command input, object snaps, layers, dimensions, hatches, blocks and paper‑space layouts. The CAD engine runs locally on your browser; drawings are not uploaded automatically. You can draw, edit, annotate, and export to PDF, SVG or PNG. Login is optional, only required if you choose to save files to private cloud storage.

How I built it

The core geometry engine is written in Rust and compiled to WebAssembly to run inside the browser. We built a command‑first UI that mimics familiar AutoCAD drafting workflows. We implemented parsers for DXF and DWG file formats, drawing tools, layer management, dimensioning and layout systems. All file processing happens client‑side. We added optional cloud storage for users who want to save drawings online, while keeping local‑first as the default mode.

Challenges I ran into

DWG and DXF formats are complex and version‑dependent, so full round‑trip file compatibility was hard to implement. Maintaining fast rendering performance in the browser for large drawings was challenging. Balancing the classic command‑line CAD workflow with a friendly web UI also required careful UX design. We also needed to clearly separate local‑only mode from cloud saving to avoid confusing users about data privacy.

Accomplishments that I'm proud of

We built a browser CAD that reads and writes standard DWG/DXF without sending drawings to the server by default. It preserves the classic CAD command workflow that engineers are used to. It works offline, requires no download or mandatory sign‑up, and remains fully open source. It supports common export formats for printing and fabrication.

What I learned

CAD geometry and file specifications are extremely detailed. Rust and WebAssembly are well suited for heavy client‑side computation in browser engineering tools. Local‑first design is not just a technical choice — it needs clear UI communication so users trust that their sensitive drawings stay private. I also learned how to adapt decades‑old desktop CAD interaction patterns for a web environment.

What's next for CADCraft

Improve compatibility with more DWG versions. Add more advanced block and attribute tools. Enhance collaborative cloud editing. Add tablet‑friendly drawing controls. Expand MCP/AI agent integration so AI can run drafting commands. Optimize performance for very large technical drawings.

Built With

Share this project:

Updates