Contribute to dartdoc

To use the dartdoc tool, see the user docs. This page contains information relevant for contributors to the dartdoc project.

Can I help?


Start by using the tool and filing issues and requests.

See the dartdoc API docs, generated by dartdoc.

If you want to contribute, check out the issue tracker and see if there‘s an issue that you’re passionate about. If you want to add a new feature that's not yet in the issue tracker, start by opening an issue. Thanks!

Build Status

Making Changes

  1. grind is needed to run dartdoc integration tests, see installed via pub global activate grinder.
  2. When a change is user-facing, please add a new entry to the changelog
  3. Please include a test for your change. dartdoc has both package:test-style unittests as well as integration tests. To run the unittests, use grind test.
  4. For major changes, run grind compare-sdk-warnings and grind compare-flutter-warnings, and include the summary results in your pull request.
  5. Be sure to format your Dart code using dart format, otherwise our CI will complain.
  6. Use grind presubmit before creating a pull request to quickly check for common problems.
  7. Post your change via a pull request for review and integration!


dartdoc has a number of grinder utility methods that can be used to check for behavior changes or try out your change on arbitrary packages.

# Serve the latest version of the given package locally on port 9000.
PACKAGE_NAME=angular_components grind serve-pub-package

# Build the SDK docs with the head version and compare its warning
# output and (rough) performance to the main version.
grind compare-sdk-warnings

# Serve the flutter docs built with the head version on port 8001.
grind serve-flutter-docs

# Serve the test package (testing/test_package) on port 8002
grind serve-test-package-docs

There are more added all the time -- run grind --help to see them all.


Please see the dartdoc license.