owl-listener/designpowers

accessible-content

Use when writing or structuring any user-facing content — interface copy, labels, error messages, help text, headings, alt text, link text, or form instructions — ensures content is readable, navigable, and meaningful for everyone

First seen Mar 20, 2026

Installation

$ npx skills add owl-listener/designpowers --skill accessible-content

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from owl-listener/designpowers · top by installs.

npx skills add owl-listener/designpowers

Browse all from owl-listener/designpowers

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 243
License LICENSE
Default branch main
Open issues 3
Status Active

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 4,490 B
  • docs SUMMARY.md 260 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 15 installs

SKILL.md

Accessible Content

Words are interface. Every label, every heading, every error message is a design decision. This skill ensures content works for screen readers, for people reading in a second language, for people under stress, and for people who just need things to be clear.

When to Use

  • Writing interface labels, button text, or form instructions
  • Structuring headings and page hierarchy
  • Writing error messages or help text
  • Creating alt text for images
  • Writing link text
  • Structuring data tables
  • Any time words appear on screen

Process

Step 1: Plain Language First

Every piece of content should meet these criteria:

  • Reading level: aim for a reading age of 12-14 (roughly 6th-8th grade). Use short sentences and common words
  • One idea per sentence. If a sentence has "and" in the middle, consider splitting it
  • Active voice. "We sent your confirmation" not "Your confirmation has been sent"
  • Specific over vague. "Save your changes" not "Submit" or "OK"
  • No jargon unless the audience demonstrably uses it. When jargon is necessary, provide a plain explanation

Step 2: Heading Structure

Headings are navigation for screen readers. Get the structure right:

  • One H1 per page — describes the page purpose
  • Headings follow a logical hierarchy — H1 → H2 → H3, never skip levels
  • Headings are descriptive — a screen reader user scanning headings alone should understand the page structure
  • Do not use headings for visual styling — if you need big bold text that is not a heading, use CSS

Step 3: Form Labels and Instructions

Every form input must have:

  • A visible label — placeholders are not labels (they disappear on focus)
  • Programmatic association<label for="id"> or aria-labelledby
  • Required field indication — visible and announced, not just an asterisk
  • Format hints — "DD/MM/YYYY" before the input, not after
  • Error associationaria-describedby linking the input to its error message

Step 4: Alt Text

Alt text is content, not metadata:

Image Type Alt Text Approach
Informative image Describe the information the image conveys, not the image itself
Decorative image Empty alt (alt="") — do not describe decorative images
Functional image (button/link) Describe the action, not the image ("Search", not "magnifying glass")
Complex image (chart/graph) Brief alt + detailed description in surrounding text or <details>
Image of text Reproduce the full text content

Step 5: Link Text

Links must make sense out of context (screen reader users often navigate by links alone):

  • Yes: "Read the accessibility guidelines"
  • No: "Click here" or "Read more" or "Learn more"
  • If multiple "Read more" links exist on a page, each must be distinguishable (via aria-label or visible text)

Step 6: Error Messages

Follow the pattern: [What happened] + [What to do]

  • Keep the language neutral — never blame the user
  • Be specific about what needs to change
  • Place the error message adjacent to the relevant field
  • Announce errors to screen readers via aria-live="assertive" or by moving focus

Step 7: Tables

Data tables need:

  • <caption> describing the table's purpose
  • <th> elements with scope="col" or scope="row"
  • No layout tables — use CSS Grid or Flexbox for layout
  • If a table is complex, provide a text summary

Step 8: Content Review

Before finalising any content, verify:

  • Every interactive element has a visible, descriptive label
  • Heading hierarchy is logical and complete
  • Link text makes sense out of context
  • Error messages explain both the problem and the solution
  • Alt text is present and appropriate for every image
  • Reading level is appropriate for the audience
  • Content works when translated (avoid idioms, cultural references that do not travel)

Integration

  • Called by: writing-design-plans, ui-composition, interaction-design
  • Pairs with: cognitive-accessibility (reading load), inclusive-personas (audience awareness)
  • Reviewed by: designpowers-critique