CadQuery –- A Python parametric CAD scripting framework based on OCCT

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • Sonar - Write Clean Python Code. Always.
  • InfluxDB - Access the most powerful time series database as a service
  • ONLYOFFICE ONLYOFFICE Docs — document collaboration in your environment
  • cadquery

    A python parametric CAD scripting framework based on OCCT

    Yeah, I think their approach to blaming PyPi for not being able to distribute their 1GB standard install is really putting the blame on the wrong people.

    https://github.com/CadQuery/cadquery/issues/153#issuecomment...

    As an example of an approach that doesn't break Pypi, nltk distributes through Pypi but has an download() method for installation.

    https://pypi.org/project/nltk/

  • libfive

    Infrastructure for solid modeling

  • Sonar

    Write Clean Python Code. Always.. Sonar helps you commit clean code every time. With over 225 unique rules to find Python bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.

  • unkeyboard

    I made this keyboard case with CadQuery. In the long run I'm working towards generating cases (and PCBs) for a wide range of keyboards (e.g. choose columns, rows, number and position of thumb keys, case style, rotary knobs, etc).

    https://imgur.com/a/VfOyAjP

    https://github.com/possibilities/unkeyboard

    Note I chose a somewhat non-idiomatic approach (in terms of cadquery) writing this and I'm new to python.

  • CQ-editor

    CadQuery GUI editor based on PyQT

    I tried this a couple of months ago, I found what it's trying to do very pleasant to use but the tooling around it is very annoying. The up-to-date version 2 isn't on pypi, conda is thoroughly unpleasant to have as an environment. There seems to be a drive to using it inside it's own editor https://github.com/CadQuery/CQ-editor while nice seems like wasted engineering effort in developing an editor when the language needs so much work. I didn't have much success structuring cad into modules as they wouldn't import well.

    The point IMO of parametric cad in an existing language is to use the ecosystem. Lots of choices in this project make that really hard.

  • freecad-cadquery2-workbench

    Workbench to render CadQuery 2.x script in FreeCAD

    This is absolutely an impressive toolset, because it provides a bridge between the CSG world (OpenSCAD, boolean operations, cutting shapes out of other shapes) and the STEP world of GUI CAD (faces, fillets, chamfers).

    There is now a FreeCad workbench for CadQuery 2.0:

    https://github.com/jpmlt/freecad-cadquery2-workbench

  • cq_gears

    CadQuery based involute gear parametric modelling

    One thing that kept me using OpenSCAD was the section of additional modules for it, including a decent involute gear creator. For those of you diving into CadQuery, here’s the equivalent: https://github.com/meadiode/cq_gears

  • antimony

    CAD from a parallel universe

    For anyone interested in this, I would also recommend checking out the [antimony project](https://github.com/mkeeter/antimony). It's a parametric modeling program, but you can also pretty easily produce new scripts for its visual nodes.

  • InfluxDB

    Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.

  • opencascade.js

    Port of the OpenCascade CAD library to JavaScript and WebAssembly via Emscripten.

    That confirms the impression I had, I guess they are just so complex that building a new open source one from scratch would be Herculean effort. Guess OCCT is the only option for now.

    The itch I would love to scratch is an online real-time collaborative parametric cad app using CRTDs. Current thinking is combining OpenCascade compiled to WASM [0] with Yjs[1], but frankly don’t have the time.

    0: https://github.com/donalffons/opencascade.js/

    1: https://github.com/yjs/yjs

  • yjs

    Shared data types for building collaborative software

    That confirms the impression I had, I guess they are just so complex that building a new open source one from scratch would be Herculean effort. Guess OCCT is the only option for now.

    The itch I would love to scratch is an online real-time collaborative parametric cad app using CRTDs. Current thinking is combining OpenCascade compiled to WASM [0] with Yjs[1], but frankly don’t have the time.

    0: https://github.com/donalffons/opencascade.js/

    1: https://github.com/yjs/yjs

  • cadquery

    CadQuery-- a parametric cad script framework (by dcowden)

    See this github issue for example: https://github.com/dcowden/cadquery/issues/29

         - the UI (cq-editor) is unusable for real-world work: no perspective rendering, no graduations in ortho views, no way to measure things on the object, no way to examine the BREP, etc ... Generally speaking, the UI is only a visualizer, and does not let you query / inspect the model in any detailed way.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts