link-purpose

Analyzes code for WCAG 2.4.4 link purpose compliance and recommends fixes.

3|Updated Apr 20, 2026
One-click install
npx skills add https://github.com/langgenius/due-date-hq-jwl --skill link-purpose-langgenius
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: link-purpose
Source: https://github.com/langgenius/due-date-hq-jwl/tree/main/.claude/skills/link-purpose
Command: npx skills add https://github.com/langgenius/due-date-hq-jwl --skill link-purpose-langgenius

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Screen reader users often navigate pages by jumping between links or reviewing a list of all links, so generic text like "click here" or "read more" gives them no idea where a link leads. This Skill audits your code for WCAG 2.4.4 Link Purpose (In Context) violations and provides concrete, copy-paste-ready fixes. ## Core Features & Use Cases - Generic Link Detection: Finds vague link text such as "read more", "learn more", "click here", and URL-only links across HTML, JSX, and Vue templates. - Ambiguity and Image-Link Analysis: Detects repeated identical link text pointing to different destinations and icon- or image-only links missing alt text or ARIA labels. - Actionable Remediation: For each violation, reports file and line number plus multiple fix options using sr-only text, aria-label, aria-labelledby, or descriptive link text. - Use Case: Before shipping a product grid where every card has a "Learn more" link, run this Skill to get per-violation reports with compliant code alternatives like "Learn more about {product.name}". ## Quick Start Analyze the files in src/components for WCAG 2.4.4 link purpose violations and suggest fixes.

Frequently Asked Questions about link-purpose

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix "read more" links for WCAG 2.4.4 compliance?

Add context so each link's purpose is clear: append visually hidden text like <span className="sr-only">about {title}</span>, use aria-label or aria-labelledby, or make the link text itself descriptive. Linking the heading instead is often the best practice.

What counts as a WCAG 2.4.4 link purpose violation?

Violations include generic text like "click here" or "learn more" without context, identical link text pointing to different destinations, image-only links without alt text, raw URLs as link text, and download links missing file type or size information.

Does this link analysis work with React and Vue components?

Yes. It detects framework-specific link components including React Router's <Link>, Next.js <Link>, Vue's <router-link>, and Nuxt's <nuxt-link>, as well as repeated link patterns generated inside .map() loops or v-for directives.

Are ambiguous links ever acceptable under WCAG 2.4.4?

Rarely. The exception applies when the link's purpose would be ambiguous to all users, such as game interfaces with intentional mystery like "Door 1" and "Door 2". When in doubt, make link text descriptive since that satisfies the stricter Level AAA criterion.

Why do screen reader users need descriptive link text?

Screen reader users commonly navigate by jumping link to link or opening a links list (Insert+F7 in NVDA, VO+U in VoiceOver), which strips away surrounding visual context. Generic text like "read more" repeated across a page gives them no way to distinguish destinations.