build123d logo

build123d

Python CAD-as-code library for parametric 2D and 3D BREP modeling on the Open Cascade kernel

Repository activity
  • Stars2.5k
  • Forks230
  • Open Issues345
License

Apache-2.0

Languages
  • Python
  • JavaScript
build123d screenshot

About build123d

build123d is a Python library for parametric boundary-representation (BREP) modeling in 2D and 3D. Built on the Open Cascade geometric kernel, it lets you describe precise CAD models in code, suited to 3D printing, CNC machining, laser cutting, and other manufacturing work.

You can model in algebra mode, where objects are explicitly tracked and combined with operators, or in builder mode, where build contexts track pending faces, edges, and locations. Explicit 1D, 2D, and 3D geometry classes, selectors that return sortable and filterable shape lists, and Python-native iterable locations make designs composable and readable.

Install it with pip, then import and export common interchange formats including STEP, STL, and SVG to move geometry between CAD tools, slicers, and CAM. It is derived from CadQuery, restructured as an independent framework.

Key features

  • Parametric 2D and 3D BREP modeling in Python
  • Algebra mode with operator-driven modeling
  • Builder mode with build contexts and combination modes
  • Shape selectors with sorting, grouping, and filtering
  • STEP, STL, and SVG import and export

Details

On GitHub since
2022
Language
Python
Geometry kernel
Open Cascade
Modeling
Parametric BREP
Install
pip install build123d