<< All versions

Skill v1.0.0

currentAutomated scan100/100
kevmoo/dash_skills/dart-doc-validation
──Details
PublishedOctober 22, 2026 at 10:39 PM
Content Hashsha256:762595e78d81eb56...
Git SHA48791b7c899a
──Files
Files (1 file, 3.2 KB)
SKILL.md3.2 KBactive
SKILL.md · 111 lines · 3.2 KB

version: "1.0.0" name: dart-doc-validation description: |- Best practices for validating Dart documentation comments. Covers using dart doc to catch unresolved references and macros. license: Apache-2.0 key_features:

  • Documentation comment validation
  • Unresolved reference checking
  • Dart doc macro verification

Dart Doc Validation

1. When to use this skill

Use this skill when:

  • Writing or updating documentation comments (///) in Dart code.
  • Checking for broken documentation links, references, or macros.
  • Preparing a package for publishing to pub.dev.

When NOT to use (Abstention Guardrails)

Do NOT apply this skill or refactor doc comments when:

  • Illustrative Pseudo-Code & Non-Dart Code Fences: Comments contain

pseudo-code, non-Dart language identifiers (e.g. `yaml, `json, ```bash, ```text), or abstract conceptual fragments intentionally not designed to compile as valid Dart.

  • Generated Code: Files generated by tools (e.g. *.g.dart, *.mocks.dart,

*.freezed.dart) where comments are synthesized.

  • External Markdown Hyperlinks: Text in square brackets followed by a link

target (e.g. [External Guide](https://...)), which is standard Markdown hyperlink syntax rather than an unresolved Dart doc reference.

Discovery

To find documentation issues:

Missing Lint

Verify if the comment_references lint is enabled:

  • Target: analysis_options.yaml
  • Search Query: comment_references

Automated Validation

Run the documentation generator to surface warnings:

  • Command: dart doc -o $(mktemp -d)
  • Keywords to look for: warning:, unresolved doc reference,

undefined macro

2. Best Practices

Enable the doc validation lint

In your analysis_options.yaml, enable the comment_references lint.

yaml
linter:
rules:
- comment_references

Validating Documentation Locally

Use the dart doc command with a temporary output directory to validate documentation comments without polluting the local project workspace.

This command parses all documentation comments and reports warnings such as:

  • warning: unresolved doc reference
  • warning: undefined macro

Command to run:

bash
dart doc -o $(mktemp -d)

_This will work on Mac and Linux._

This ensures that the generated HTML files are stored in a temporary location and don't clutter the package directory, while still surfacing all validation warnings in the terminal output.

Browsing the docs:

Our docs use features designed to be run on a web server. If you want to browse the generated docs locally, install the dhttpd package.

shell
dart install dhttpd
TMP_DIR=$(mktemp -d) && dart doc -o "$TMP_DIR" && dhttpd --path "$TMP_DIR"

_(Or use another HTTP server, such as python3 -m http.server.)_

Fixing Common Warnings

  • Unresolved doc reference: Ensure that any identifier wrapped in square

brackets ([Identifier]) correctly points to an existing class, method, property, or parameter in the current scope or imported libraries.

  • Undefined macro: If using {@macro macro_name}, ensure that the template

{@template macro_name} is defined in the same file or a file that is imported and visible to the documentation generator.

All versions