A lightweight 2D CAD tool for the web, built on SVG.
Nanquim is a simple, browser-based 2D CAD editor designed for creating technical drawings directly in SVG. The goal is to provide a straightforward and accessible tool for precision drawing without the need for heavy desktop software.
The name "Nanquim" is a nod to the ink pens (canetas nanquim) traditionally used by architects and engineers for creating detailed technical drawings. This project aims to bring that same spirit of precision and craft to the modern web.
My dream would be to see this kind of editor inside Blender one day. For now, I’m just rolling with what I know—HTML/CSS/JS—before even thinking about how it could fit into Blender. I'm curious, does anyone else feel like we’re missing a good 2D tool for making technical drawings natively in SVG?
Nanquim is in active development but already sports a robust set of 2D CAD features:
- Draw: Line (
L), Circle (C), Rectangle (REC), Arc (A) - Modify: Move (
M), Copy (CO), Rotate (R), Scale (S), Offset (O), Fillet (F), Mirror (MI) - Edit: Trim (
TR), Extend (EX), Erase (E) - Utilities: Measure Distance (
D), Match Properties (MA)
- Collections System: Group elements into manageable, hierarchical collections (layers).
- Outliner: A Photoshop/Blender-style hierarchical tree view to easily select, hide (
eye icon), or lock (padlock icon) elements and collections. - Properties Panel: Inspect and tweak attributes (color, stroke width, collection assignment) of selected elements.
- Snapping:
OSNAP(endpoints, midpoints, intersections) andORTHO(orthogonal locking) modes for precise drawing. - Viewport: Infinite canvas with smooth pan (
Middle Mouse) and zoom (Scroll) capabilities. - Command Line Interface: AutoCAD-style command aliases for fast, keyboard-driven workflows.
- Import: Load existing
.dxf(CAD files) or.svgdrawings. - Export: Save your drawings natively to standalone, standard
.svgfiles (with smart white-to-black stroke conversion for external viewing).
- Frontend: HTML, SASS, and vanilla JavaScript
- Templating: Pug
- Build Tool: Vite
To run Nanquim locally:
-
Clone the repository:
git clone https://github.com/elschilling/nanquim.git cd nanquim -
Install dependencies:
npm install
-
Start the development server:
npm run dev
This will open the application in your default browser.
This is a personal project born out of a desire for a better 2D drawing tool on the web. Contributions, ideas, and feedback are highly welcome! Feel free to open an issue or submit a pull request.
This project is licensed under the GNU General Public License v3.0. See the LICENSE file for details.