adev-writing-guide

Comprehensive writing guide for Angular documentation (adev). Covers Google Technical Writing standards, Angular-specific markdown extensions, code blocks, and…

INSTALLATION
npx skills add https://github.com/angular/angular --skill adev-writing-guide
Run in your project or agent environment. Adjust flags if your CLI version differs.

SKILL.md

$27

  • Use second person ("you"): Address the reader directly.
  • Prefer active voice: Clearly state who or what is performing the action (e.g., "The system generates a token" vs "A token is generated").
  • Standard American English: Use standard American spelling and punctuation.
  • Conditional clauses first: Place "if" or "when" clauses before the instruction (e.g., "If you encounter an error, check the logs").
  • Define terms: Introduce new or unfamiliar terms/acronyms upon first use.
  • Consistent terminology: Use the same term for the same concept throughout the document.
  • Conciseness: Aim for one idea per sentence. Keep sentences short.

Formatting and Organization

  • Sentence case for headings: Capitalize only the first word and proper nouns in titles and headings.
  • Lists:
  • Numbered lists: Use for sequential steps or prioritized items.
  • Bulleted lists: Use for unordered collections of items.
  • Description lists: Use for term-definition pairs.
  • Serial commas: Use the Oxford comma (comma before the last item in a list of three or more).
  • Code formatting: Use code font for code-related text (filenames, variables, commands).
  • UI Elements: formatting user interface elements in bold.
  • Date formatting: Use unambiguous formats (e.g., "September 4, 2024" rather than "9/4/2024").
  • Structure: Use logical hierarchy with clear introductions and navigation. Headings should be task-based where possible.

Images and Code Samples

  • Images: Use simple, clear illustrations to enhance understanding.
  • Captions: Write captions that support the image.
  • Code Samples:
  • Ensure code is correct and builds without errors.
  • Follow language-specific conventions.
  • Comments: Focus on why, not what. Avoid commenting on obvious code.

Reference Hierarchy

  • Project-specific style guidelines (if any exist in CONTRIBUTING.md or similar).
  • Google Developer Documentation Style Guide.
  • Merriam-Webster (spelling).
  • Chicago Manual of Style (non-technical).
  • Microsoft Writing Style Guide (technical).

II. Angular Documentation Specifics

Code Blocks

Use the appropriate language identifier for syntax highlighting:

  • TypeScript (Angular): Use angular-ts when TypeScript code examples contain inline templates.
  • HTML (Angular): Use angular-html for Angular templates.
  • TypeScript (Generic): Use ts for plain TypeScript.
  • HTML (Generic): Use html for plain HTML.
  • Shell/Terminal: Use shell or bash.
  • Mermaid Diagrams: Use mermaid.

#### Attributes

You can enhance code blocks with attributes in curly braces {} after the language identifier:

  • header="Title": Adds a title to the code block.
  • linenums: Enables line numbering.
  • highlight="[1, 3-5]": Highlights specific lines.
  • hideCopy: Hides the copy button.
  • prefer: Marks code as a preferred example (green border/check).
  • avoid: Marks code as an example to avoid (red border/cross).

Example:

@Component({

selector: 'my-app',

template: '<h1>Hello</h1>',

})

export class App {}

#### Component

For more advanced code block features, use the <docs-code> component:

  • path: Path to a source file (e.g., adev/src/content/examples/...).
  • header: Custom header text.
  • language: Language identifier (e.g., angular-ts).
  • linenums: Boolean attribute.
  • highlight: Array of line numbers/ranges (e.g., [[3,7], 9]).
  • diff: Path to diff file.
  • visibleLines: Range of lines to show initially (collapsible).
  • region: Region to extract from source file.
  • preview: Boolean. Renders a live preview (StackBlitz). Only works with standalone examples.
  • hideCode: Boolean. Collapses code by default.

Multifile Example:

<docs-code-multifile path="..." preview>

  <docs-code path="..." />

  <docs-code path="..." />

</docs-code-multifile>

Alerts / Admonitions

Use specific keywords followed by a colon for alerts. These render as styled blocks.

  • NOTE: For ancillary information.
  • TIP: For helpful hints or shortcuts.
  • IMPORTANT: For crucial information.
  • CRITICAL: For warnings about potential data loss or severe issues.
  • TODO: For incomplete documentation.
  • QUESTION: To pose a question to the reader.
  • SUMMARY: For section summaries.
  • TLDR: For concise summaries.
  • HELPFUL: For best practices.

Example:

TIP: Use `ng serve` to run your application locally.

Custom Components

  • **Cards (<docs-card>):**
  • Must be inside <docs-card-container>.
  • Attributes: title, link, href.
  • **Callouts (<docs-callout>):**
  • Attributes: title, important, critical.
  • **Pills (<docs-pill>):**
  • Must be inside <docs-pill-row>.
  • Attributes: title, href.
  • **Steps / Workflow (<docs-step>):**
  • Must be inside <docs-workflow>.
  • Attributes: title.
  • **Tabs (<docs-tab>):**
  • Must be inside <docs-tab-group>.
  • Attributes: label.
  • **Videos (<docs-video>):**
  • Attributes: src (YouTube embed URL), alt.

Images

Use standard markdown syntax with optional attributes for sizing and loading behavior.

  • #small, #medium: Append to image URL for sizing.
  • {loading: 'lazy'}: Add attribute for lazy loading.

Example:

![Alt Text](path/to/image.png#medium {loading: 'lazy'})

Headers

  • Use markdown headers (#, ##, ###).
  • Ensure a logical hierarchy (don't skip levels).
  • h2 and h3 are most common for content structure.
BrowserAct

Let your agent run on any real-world website

Bypass CAPTCHA & anti-bot for free. Start local, scale to cloud.

Explore BrowserAct Skills →

Stop writing automation&scrapers

Install the CLI. Run your first Skill in 30 seconds. Scale when you're ready.

Start free
free · no credit card