dart-python
Python bindings (dartpy) for DART physics simulation: build wheels, generate type stubs, and manage robotics simulation workflows using nanobind and C++ integration.
Introduction
The dart-python skill provides comprehensive tooling for managing and interacting with DART (Dynamic Animation and Robotics Toolkit) through its Python interface, dartpy. Designed for robotics researchers, simulation engineers, and software developers, this skill facilitates the bridge between high-performance C++ dynamics and Python-based prototyping. It is intended for users performing kinematics, rigid body dynamics, contact physics, and constrained motion simulation who require the speed of C++ with the flexibility of the Python ecosystem.
-
Full support for dartpy development workflows including development builds, testing suites, and type stub generation for IDE auto-completion.
-
Wheel building infrastructure using Pixi environments, including Linux-specific repair tools and cross-platform CI integration.
-
Seamless interoperability between NumPy arrays and DART Eigen data structures, ensuring efficient data exchange between numerical libraries and the physics engine.
-
Access to core simulation components such as World configurations, Skeleton loading (URDF, SDF, MJCF, SKEL), and custom constraint solvers.
-
Integration with build systems using CMake and nanobind to maintain ABI compatibility and performance optimizations.
-
Use this skill when writing scripts for robot simulation, performing motion planning, or debugging dynamics calculations.
-
Always prefer snake_case naming conventions for API calls to avoid deprecation warnings associated with legacy camelCase.
-
Ensure the DART_BUILD_GUI=ON flag is set during the build process if your simulation task requires visual debugging or rendering via the GUI backend.
-
Leverage the provided Quick Commands like 'pixi run build-py-dev' and 'pixi run test-py' for rapid iteration cycles.
-
Input expected is primarily Python code interacting with the dartpy module; output involves simulated physics states, skeleton positions, or visual scene updates.
Repository Stats
- Stars
- 1,078
- Forks
- 299
- Open Issues
- 0
- Language
- C++
- Default Branch
- main
- Sync Status
- Idle
- Last Synced
- May 1, 2026, 09:36 AM