format source
1 file changed
tree: f3f4d2a1e7e8a6aaaf43f4c9dce9d85187963fa9
  1. bin/
  2. example/
  3. lib/
  4. test/
  5. test_package/
  6. test_package_bad/
  7. test_package_not_valid/
  8. test_package_small/
  9. tool/
  10. .analysis_options
  11. .gitignore
  12. .project
  13. .travis.yml
  14. appveyor.yml
  15. AUTHORS
  16. CHANGELOG.md
  17. CONTRIBUTING.md
  18. firebase.json
  19. LICENSE
  20. pubspec.lock
  21. pubspec.yaml
  22. README.md
README.md

dartdoc

Use dartdoc to generate HTML documentaton for your Dart package.

Note: As of Dart 1.12-dev.5.10, dartdoc is shipped with the Dart SDK and replaces docgen and dartdoc-viewer.

If you want to contribute to the dartdoc project, see the contributor docs. This page contains information about using the dartdoc tool.

Installing dartdoc

From the Dart SDK

Download the Dart SDK, version 1.12-dev.5.10 or later. If not already added, add the SDK's bin directory to your PATH.

From pub.dartlang.org

You can install the latest version of dartdoc with pub:

$ pub global activate dartdoc

Note: to ensure that this version is run when you type dartdoc on the command line, make sure that ~/.pub-cache/bin is on your PATH, and before the path to the Dart SDK.

Running dartdoc

Generating docs

Run dartdoc from the root directory of package. For example:

$ dartdoc
Generating documentation for 'server_code_lab' into <path-to-server-code-lab>/server_code_lab/doc/api/

parsing lib/client/piratesapi.dart...
parsing lib/common/messages.dart...
parsing lib/common/utils.dart...
parsing lib/server/piratesapi.dart...
Parsed 4 files in 8.1 seconds.

generating docs for library pirate.messages from messages.dart...
generating docs for library pirate.server from piratesapi.dart...
generating docs for library pirate.utils from utils.dart...
generating docs for library server_code_lab.piratesApi.client from piratesapi.dart...
Documented 4 libraries in 9.6 seconds.

Success! Open file:///<path-to-server-code-lab>/server_code_lab/doc/api/index.html

By default, the documentation is generated to the doc/api directory as static HTML files.

Viewing docs

You can view the generated docs directly from the file system, but if you want to use the search function, you must load them with an HTTP server.

An easy way to run an HTTP server locally is to use the simple_http_server package. For example:

$ pub global activate simple_http_server
$ dhttpd --path doc/api

Navigate to localhost:8080 in your browser. The search function should now work.

Options

Command-line options for dartdoc include:

  • -h or --help Display help.
  • --header=<file> Insert the specified file, which contains HTML code, into the footer of every page.
  • --footer=<file> Insert the specifying file, which contains HTML code, into the header of every page.
  • --input=<directory> Generate the docs from the specified directory. If not specified, it defaults to the current directory.
  • --output=<directory> Generate the output to the specified directory. If not specified, it defaults to doc/api.
  • --package-root=<directory> Specify the package root of the library.
  • --exclude=<lib1,lib2,lib3,...> Exclude the specified libraries from the generated docs.
  • --include=<lib1,lib2,lib3,...> Generate docs for the specified libraries.
  • --hosted-url=<url> Build a docs sitemap using the specified URL for your website.
  • --url-mapping=<libraryUri>,<path-to-library>/<lib>.dart Use the specified library as the source for that particular import.

The following options are used only when generating docs for the Dart SDK.

  • --dart-sdk=<path> Specify the location of the Dart SDK, if it can't be detected automatically.
  • --sdk-docs Generate only docs for the Dart SDK.
  • --sdk-readme=<file> Specify the README file for the Dart SDK.

Issues and bugs

Please file reports on the GitHub Issue Tracker.

License

Please see the dartdoc license.