// the find
CauldronDevelopmentLLC/CAMotics
Open-Source Simulation & Computer Aided Machining - A 3-axis CNC GCode simulator
CAMotics is a desktop simulator for 3-axis CNC GCode that lets you preview tool paths before cutting. It's aimed at hobbyist CNC owners who want to catch mistakes without wasting material or snapping bits. The built-in TPL scripting layer (JavaScript via V8) lets you write parametric tool paths as code rather than importing from a CAD package.
Embedding V8 as a scripting engine is the genuinely interesting design decision here — you can write full parametric programs in JavaScript that emit GCode, which is far more expressive than raw GCode templating. Prebuilt machine configs for popular hobbyist CNCs (Shapeoko, X-Carve, Taig) mean you can get realistic workspace and travel limit simulation without digging through specs. The included examples cover a wide range of real tool path patterns — gears, DXF imports, multi-file assemblies — which doubles as a usable test suite. Cross-platform prebuilt packages means most users never need to touch the build system.
The build process is a genuine obstacle: you have to first build cbang, the author's own C++ utility framework from a separate repo, set an environment variable pointing at it, then build CAMotics — and V8 has to be installed before cbang. Getting V8 built from source on any platform is its own project. Hard 3-axis limit means it's useless for 4th/5th axis work, which is increasingly common even in hobbyist shops with rotary attachments. The project is tied to Qt5 at a time when Qt5 is end-of-life; there's no visible Qt6 migration work. SCons as the build system means almost nobody will have it installed or know how to debug it when something goes wrong.