cadquery/cadquery

A python parametric CAD scripting framework based on OCCT

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 7 minutes ago
Added to GitGenius on September 11th, 2026
Created on October 28th, 2018
Open Issues & Pull Requests: 472 (+0)
GitHub issues: Enabled
Number of forks: 539
Total Stargazers: 5,752 (+0)
Total Subscribers: 73 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Issue API getrepoissuespagesummary failed: 429 Rate limit exceeded. Please try again later.

Detailed Description

CadQuery is a Python parametric CAD scripting framework that lets developers build 3D models through code rather than graphical interfaces. It wraps the OpenCASCADE geometry kernel and provides a fluent API designed to read like natural descriptions of objects.

The tool solves the problem of creating CAD models programmatically without proprietary software or GUIs. Its approach uses a chaining syntax where operations build on previous geometry—you describe what you want to create in Python, and the framework handles the underlying computational geometry. This makes models easy to parameterize: a single script can generate many variations by changing input values. The framework outputs industry-standard formats including STEP, DXF, STL, and others, and supports advanced modeling operations like fillets, lofts, and parametric curves. It can also assemble multiple parts into nested structures.

CadQuery suits teams building CAD models as part of larger systems, scientific computing workflows, or server-side generation pipelines where a GUI is unnecessary or unwanted. It works well for anyone comfortable writing Python who wants to version-control designs as code. The tool includes visualization capabilities and integrates with JupyterLab and CQ-Editor for interactive development. Installation via conda is better supported than pip, though pip works on Linux, macOS, and Windows with Python 3.9 through 3.12.

The project maintains a substantial user base that actively reports issues and requests features. Maintainers typically respond to new issues and pull requests within a day. The issue tracker shows that most work centers on questions from users, bug fixes, and assembly functionality, with almost all open issues originating from outside contributors rather than the core team.