This file provides conventions and tips for agents working in this repository. Read it before modifying code or documentation.
- DART (Dynamic Animation and Robotics Toolkit) is a mixed C++/Python project that offers kinematic and dynamic algorithms for robotics and animation.
- The core library lives under
dart/(C++). Python bindings are built inpython/and exposed asdartpy.
- Prefer
rgfor searching the code base. - Keep commits focused and run the relevant checks before committing.
- Follow the style guide in
CONTRIBUTING.md(two‑space indent, camelCase functions, PascalCase classes, no cuddled braces).
These steps configure and compile DART from source in the Codex environment.
- Configure the build (defaults to Release):
pixi run config
- Build the C++ library and utilities:
pixi run build
- Build the Python bindings (
dartpy):pixi run build-dartpy
- Run the test suites:
pixi run test # C++ tests pixi run test-dartpy # Python tests
If pixi is unavailable, install it from https://pixi.sh and ensure the toolchain dependencies in pixi.toml are met. The build system uses CMake and Ninja under the hood, so you can fall back to manual CMake builds if necessary.
- Documentation lives in
docs/andtutorials/. - Examples demonstrating API usage can be found in
examples/.