A Python and Rust library for generating spirograph and guilloché patterns.
Start with your first pattern, or browse the documentation:
- Tutorials: generate a pattern, compose a dial, and run a rose engine.
- How-to guides: install, position layers, export, and develop.
- Reference: Python APIs, Rust entry points, units, defaults, and errors.
- Explanation: pattern models, coordinates, clipping, and export geometry.
- SVG - 2D vector previews and pattern paths.
- STEP (.stp) - Sampled CAD curves, not solid geometry or a CNC program.
- STL - Triangle ribbons, not watertight plates or swept grooves.
Supported methods differ by class. See the export reference before choosing an export route.
The library crate is turtles, defined in the nested Rust package. See
installation for a local Cargo dependency and the
Rust reference for a complete example.
Requires Python 3.11 or later.
pip install pyturtlesImport the package as turtles. Source builds require Rust and a native linker;
see installation.
JavaScript bindings are not currently included.
Apache-2.0
Note
This library was generated using copier from the Base Python Project Template repository.











