Contributing to DART
June 17, 2026 ยท View on GitHub
Thank you for your interest in contributing to DART! We welcome contributions of all kinds: bug fixes, new features, documentation improvements, and more.
Quick Start
- New to DART? Read the Developer Onboarding Guide
- Ready to contribute? See Contribution Workflow
- Building from source? Follow the Build Guide
- Code style? Check the Style Guide
How to Contribute
The best way to contribute is by opening a GitHub pull request. Make sure your code follows DART conventions (see style guide).
Don't worry about perfection! Feel free to post work-in-progress versions to get feedback and start the discussion.
Copyright Headers
All source files should include a copyright header. We use the year of first publication (2011) following FSFE REUSE best practices:
/*
* Copyright (c) 2011, The DART development contributors
* All rights reserved.
*
* The list of contributors can be found at:
* https://github.com/dartsim/dart/blob/main/LICENSE
*
* This file is provided under the following "BSD-style" License:
* ...
*/
Important: Do NOT update the year when modifying files. The year represents the first publication date of the project, not the last modification. This follows industry best practice (used by Google, curl, Gazebo, etc.) and eliminates unnecessary maintenance.
Before Submitting a PR
- Code follows the DART style guide
- Build succeeds:
pixi run build - Tests pass:
pixi run testor a more focusedpixi run ...test task - Code is formatted:
pixi run lint - Documentation is updated if needed
- Bug fixes that apply to the release line have an active-DART-6-LTS PR
first, then a
mainPR - PR uses
.github/PULL_REQUEST_TEMPLATE.md - Target milestone is set (
DART 7.0formain, branch-matching DART 6.x patch milestone for the active DART 6 LTS branch) -
CHANGELOG.mdis updated according to the changelog guide, or the PR explains why no changelog entry is needed - Any used
docs/dev_tasks/<task>/folder is removed in this PR after durable notes move into onboarding docs
Advanced manual CMake details live in the build guide,
but the public contribution checklist uses pixi run ... tasks.
Getting Help
- Documentation: docs/onboarding/
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Contributors
DART is developed by a diverse community of researchers and engineers. See the full contributor list for acknowledgments.
License
By contributing to DART, you agree that your contributions will be licensed under the BSD 2-Clause License.