Use one python script to interact with all these software:
- Blender* - Digital Modeling Software
- Onshape** - Product Development and CAD Software
- PyBullet*** - Real-time Physics Simulation Library
- KiCAD*** - Electronic/PCB Design Software
- LLM/AI based model generation ***
- FreeCAD*** - CAD Software
- ThreeJS*** - Web-based 3D Library
- Libfive*** Signed Distance Field Modeling library
* Alpha/Beta support ** Pre-alpha development. *** To be developed.
Pre-requisites: Python 3.10 or newer.
-
Install the CodeToCAD PIP Package to get intellisense syntax highlighting.
pip install CodeToCAD
-
Create your own CodeToCAD python file and save it:
# my_codetocad_script.py # This is also the examples/materials.py example from codetocad import * my_material = Material("material").set_color(169, 76, 181, 0.8) Part("Cube").create_cube(1, 1, 1).set_material(my_material)
-
Run your script in your modeling software. If you are using Blender, check out the instructions for installing the Blender Addon addon below.
Note: Blender 3.1 or newer is required.
-
Download a release and install the Blender Addon from CodeToCADBlenderAddon.zip or from the latest Release (see the sidebar).
If you're a developer, instead of downloading a release, you can clone this repository. Video Guide
-
Import your script using the file menu > import > CodeToCAD or the CodeToCAD menu in the sidebar.
Note, you can also run CodeToCAD in Blender via cli:
blender -- --codetocad $(pwd)/yourScript.py
-
Run or browse the examples!
-
Join the Discord Server to receive updates and help from the community! https://discord.gg/MnZEtqwt74
Since CodeToCAD scripts are written and executed in Python, be careful when running scripts you find on the internet!
Benefits of code-based modeling with CodeToCAD:
✅ Simplified modeling interface - it's all text! No more scrolling and clicking into sub-menus to edit your models.
🔓 Not vendor locked - your models are created in an open-source language. If you want to use another software, you do not lose the features you have defined. Note: There is no guarantee that a model created for, e.g. Blender, will work right away for another software, but with some refactoring, it theoretically should!
🪶 Lightweight and portable. All you need is a text-editor to model. You can occasionally fire-up your modeling software to run your creations.
💪 Leverages existing programming languages, like Python. You can keep using the languages you're familiar with and love. There is no one-off language you and your team has to learn. Use CodeToCAD like a library or a framework.
🚦Easy version control. Your models are written in code, you can use industry-loved git to keep track of versions of your models.
💕 Built by people who believe in automation and that modeling workflows should be intuitive, reliable and most importantly free and open source!