
build123d
build123d is a free, open-source Python framework for parametric 2D and 3D CAD.
What build123d is
build123d is a free, open-source Python framework for parametric 2D and 3D CAD. It uses boundary representation geometry through the Open Cascade kernel and supports builder and algebra modeling styles. Parameters let designers change key values and derive related dimensions, while explicit 1D, 2D, and 3D geometry classes define operations. The package includes assembly design, sheet-metal tools, and surface modeling for work intended for 3D printing, CNC machining, laser cutting, and other manufacturing. It imports STEP, STL, and 3MF files, and exports BREP, DXF, glTF, OBJ, STL, STEP, SVG, and 3MF. Models can be exported to FreeCAD and SolidWorks, and objects can be exchanged with CadQuery through the shared OCP wrapper. build123d runs on Windows, macOS, and Linux as a Python package, commonly installed with pip. Documentation is available in PDF and EPUB formats, with help through a shared Discord channel. Some parts may not be constructible by the underlying CAD core.
Good
- Free open-source Python package
- Parametric dimensions update related geometry
- Supports assemblies, surfaces, and sheet metal
- Exports many CAD and manufacturing formats
- Works with FreeCAD and SolidWorks exports
Watch out
- Some parts may fail in the CAD core
- No cloud collaboration is provided
- Requires Python-based installation and workflow
Who it suits
build123d suits Python users who need parametric CAD and manufacturing-ready file exchange. It is also appropriate for designers working on Windows, macOS, or Linux.
Verdict
build123d offers code-driven parametric CAD with broad format support and manufacturing-oriented tools. Designers should account for occasional geometry construction limits and its Python-centered approach.
Plans and prices
From build123d's own pricing page, checked 30 Sep 2026.
| Plan | Price | What it gives you |
|---|---|---|
| build123d | Free | Open-source Python CAD library · install with pip |
The facts
Each one read from build123d's own pages, with the date it was checked.
What it does
- Algebraic Modeling
- Supports operator-driven, readable, composable modeling logic.checked 28 Sep 2026
- Assembly design
- Yeschecked 23 Sep 2026
- CAD Export
- Models can be exported to FreeCAD and SolidWorks.checked 28 Sep 2026
- CAD interoperability
- The project says models can be exported to tools such as FreeCAD and SolidWorks, and build123d objects can be exchanged with CadQuery through their shared OCP wrapper.checked 30 Sep 2026
- Cloud collaboration
- Nochecked 23 Sep 2026
- Code Standards
- Uses PEP 8, mypy, pylint, and rich Pylance type hints.checked 28 Sep 2026
- Copyright Holder
- The documentation shows copyright 2022, Gumyr.checked 28 Sep 2026
- Documentation Version
- The page identifies the documentation as build123d 0.13.1.dev16+g66c62212d.checked 28 Sep 2026
- Extensibility
- Custom objects and operations can be added as classes without monkey patching core functionality.checked 30 Sep 2026
- File import and export
- Import: STEP, STL, 3MF; export: BREP, DXF, glTF, OBJ, STL, STEP, SVG, 3MFchecked 23 Sep 2026
- Geometric Kernel
- Built on the Open Cascade geometric kernel.checked 28 Sep 2026
- Geometry Basis
- Boundary representation, or BREP, modeling.checked 28 Sep 2026
- Geometry Classes
- Provides explicit 1D, 2D, and 3D geometry classes with defined operations.checked 28 Sep 2026
- Installation
- The recommended installation for most users is `pip install build123d`, with development installation also available from GitHub.checked 30 Sep 2026
- Interchange formats
- Documented import and export formats include 3MF, BREP, DXF, glTF, OBJ, STL, STEP, and SVG.checked 30 Sep 2026
- License
- The project repository states that build123d is licensed under Apache License 2.0.checked 30 Sep 2026
- Manufacturing uses
- The framework is intended for creating precise models for 3D printing, CNC machining, laser cutting, and other manufacturing processes.checked 30 Sep 2026
- Manufacturing Uses
- Suitable for 3D printing, CNC machining, laser cutting, and other manufacturing processes.checked 28 Sep 2026
- Model Complexity
- Intricate parametric models can be created in a few lines of readable Python code.checked 28 Sep 2026
- Modeling limitation
- The docs warn that some parts cannot be constructed successfully by the underlying CAD core and that designers may need to try alternate approaches.checked 30 Sep 2026
- Modeling method
- parametricchecked 23 Sep 2026
- Modeling styles
- It supports builder and algebra modeling modes, with operator-driven modeling and Python context managers.checked 30 Sep 2026
Where it runs
- Design Approach
- Designed for modern, maintainable CAD-as-code.checked 28 Sep 2026
Money
- Free plan
- Yeschecked 23 Sep 2026
Alternatives to build123d
- 1
Rhino 3D
Free planiOSAPILinuxmacOS8.8Free plan - 2

Onshape
Free planAndroidiOSWeb8.6From $1,500 a year - 3
SOLIDWORKS
WebmacOSWindows8.3From $48 a year - 4

Shapr3D
Free planmacOSWindows8.1From $299 a year - 5

Plasticity
Free planLinuxmacOSWindows7.9$175 one-time - 6

OpenSCAD
Free planOpen sourceWebAPILinuxmacOS7.9Free plan
