
CadQuery is an open-source, Python-based parametric CAD framework built for engineers who prefer writing code over working inside a GUI-driven modeling environment. Instead of constructing geometry through feature trees and interactive sketches, CadQuery lets users define parts programmatically using Python scripts.
At its core, CadQuery combines a constructive solid geometry approach with parametric modeling, enabling precise, repeatable, and highly customizable part generation. Engineers define geometry through chained operations such as extrude, cut, fillet, and boolean operations, all expressed in clean, readable Python syntax.
One of CadQuery's most significant advantages is its ability to integrate directly into engineering automation pipelines. Because models are code, they can be version-controlled, parameterized, and generated dynamically. This makes it particularly useful for design automation, configuration-driven parts, and batch geometry generation.
CadQuery is built on top of the OpenCascade geometry kernel, giving it robust solid modeling capabilities comparable to many traditional CAD systems. It also supports exporting to standard CAD formats such as STEP and STL, enabling interoperability with simulation tools, CAM software, and manufacturing workflows.
Unlike traditional CAD tools, CadQuery does not prioritize interactive modeling. Instead, it targets engineers who want reproducibility, automation, and programmatic control over geometry, making it a popular choice in hardware startups, computational design workflows, and engineering scripting environments.
Mechanical engineers, engineering software developers, and research teams who want to define and generate parametric CAD geometry programmatically using Python, integrate CAD model generation into automated pipelines, or build internal tools and configurators that produce engineering-grade STEP output without a GUI-dependent workflow.
Particularly well suited to applications involving families of similar parts, geometry driven by external data sources, and automated design-to-manufacture pipelines where a scripting-first approach is more efficient than manual feature modeling.
Engineers who need an interactive GUI for sketching, constraint management, assembly visualization, GD&T annotation, drawing generation, and PDM integration. CadQuery is a geometry generation library, not a complete CAD environment.
Teams who are not comfortable writing Python code will find the learning curve steep relative to point-and-click parametric CAD tools. Teams that need BOM management, drawing output, or integrated simulation should combine CadQuery with downstream tools that cover those workflows.
For complex surfacing, large enterprise assemblies, or drawing-heavy workflows, traditional CAD tools still outperform it.
Windows, macOS, and Linux.
Installation via conda using the conda-forge channel is the recommended and best-supported path due to OpenCASCADE dependency complexity. pip installation is available but less reliable across all environments. CQ-Editor is available as a standalone installer for Windows and macOS.
Compatible with standard Python IDEs including VS Code and PyCharm. Runs in Jupyter environments through ocp-cad-viewer. No internet connection is required for geometry generation after installation.
Completely free and open source under the Apache Public License version 2.0, which permits commercial use, modification, and distribution without restriction.
Community support is available through GitHub issues, a dedicated Discord server, and the CadQuery documentation. No commercial support contracts are offered. The CQ-Editor and ocp-cad-viewer visualization tools are also free and open source.
Costs may arise indirectly from infrastructure if CadQuery is used in automated pipelines or cloud environments.
⭐ 4.3 / 5
CadQuery occupies a distinctive position in the CAD landscape as a serious parametric modeling library for engineers who think in code. For teams building automated geometry pipelines, parametric part configurators, or AI-assisted design tools, it offers a level of programmability and output quality that GUI-based tools are not architected to provide.
Build123d, OpenSCAD, FreeCAD (Python Scripting), Zoo Design Studio, SolveSpace, SolidPython, Fusion 360 API, Onshape (Feature Script)
2014