KittyCAD Language (KCL) is our language for defining geometry and working with our Geometry Engine efficiently.
This repository includes a mixture of simple and complex models demonstrating the features and syntax of KCL.
The samples can be browsed in our documentation at https://zoo.dev/docs/kcl-samples.
KCL samples conform to a set of style guidelines to ensure consistency and readability.
-
File Naming: Name your KCL files descriptively and concisely, using hyphens to separate words (e.g., flange.kcl, ball-bearing.kcl).
-
File Header: The first comment line should be the file's title. The second - a brief description explaining what the model is and its typical use cases. Optionally, but preferred, the third comment line should be "Categories:" followed by a category value or comma separated category values. Leaving this off won't break anything, but will list the sample on the website as "Uncategorized".
-
Inline Comments: Use inline comments to explain non-obvious parts of the code. Each major section should have a comment describing its purpose.
-
Constants: Define constants at the beginning of your KCL files for any values that might change or need to be reused (e.g., dimensions, angles).
When you submit a PR to add or modify KCL samples, you need to run a few commands to generate the required artifacts. Note: You must have a ZOO_API_TOKEN set in your env for this to work.
cd rust
just overwrite-sim-test-sample samplename
ex. just overwrite-sim-test-sample angle-gauge





















































































































































