# CadQuery

40 Hacker News commenters recommended CadQuery and 6 criticized it, November 2025 to November 2026. It was recommended in 12 of 13 months. It meets the Hacker Approved badge rule.

**Verdict:** Free Python library for writing parametric 3D CAD models as code, with a real B-rep kernel that is easy to version in git. Caveats: not always easy to write, and rendering can be slow.

## Why people recommend it

- Parametric, versionable Python code (3 comments): "Being able to parametrize everything and version it like any other Python project is a huge win" ([source](https://news.ycombinator.com/item?id=47836293)) "Python, so leverage your Python skills and existing libraries." ([source](https://news.ycombinator.com/item?id=47801965)) "I've been looking for an intuitive cad-as-code system to check into git instead. So this would be awesome!" ([source](https://news.ycombinator.com/item?id=47805340))
- Works well with LLM code generation (8 comments): "I've been having excellent success with prompts like "use cadquery and build x" for moderately simple stuff" ([source](https://news.ycombinator.com/item?id=48181982)) "I've had pretty good success with using LLMs to generate basic shapes using python and cadquery" ([source](https://news.ycombinator.com/item?id=48464699)) "For a lot of stuff, you might have better luck getting it to generate something like cadquery" ([source](https://news.ycombinator.com/item?id=47525231))
- Solid B-rep kernel and STEP export (4 comments): "it has a proper bRep kernel, so it can represent vertexes, edges, arcs and faces" ([source](https://news.ycombinator.com/item?id=49686084)) "CadQuery can export STEP files, and is overall much nicer to use in my opinion." ([source](https://news.ycombinator.com/item?id=47801850)) "you can use CadQuery/Build123D and generate STEP files for some of it" ([source](https://news.ycombinator.com/item?id=46394095))
- Cleaner, more expressive than OpenSCAD (3 comments): "I find the latter be effectively the same but with a cleaner more expressive syntax and some helper functions that people would commonly expect to be there." ([source](https://news.ycombinator.com/item?id=50041500)) "It's a similar idea to OpenSCAD, but embedded in Python and using a better geometry kernel." ([source](https://news.ycombinator.com/item?id=50037332)) "solved a lot of OpenSCAD's issues by having all offsets be relative by default but also introduces a few issues of its own" ([source](https://news.ycombinator.com/item?id=46338896))

## What people warn about

- Not always easy to write (2 comments): "CadQuery is not always that easy to write." ([source](https://news.ycombinator.com/item?id=47803212)) "I find it incredibly painful." ([source](https://news.ycombinator.com/item?id=48174580))

## Alternatives hackers recommend

- [build123d](https://hackerapproved.com/p/build123d.md): 53 recommend
- [BOSL2 library for OpenSCAD](https://hackerapproved.com/p/bosl2-library-for-openscad.md): 22 recommend
- [Cadova](https://hackerapproved.com/p/cadova.md): 5 recommend

## Cite as

Hacker Approved, "CadQuery", https://hackerapproved.com/p/cadquery/ (counts from 1,795,640 Hacker News comments, November 2025 to November 2026).
