Skip to content
| Marketplace
Sign in
Visual Studio Code>Linters>Waysill: WCAG Checks for HTML and JSXNew to Visual Studio Code? Get it now.
Waysill: WCAG Checks for HTML and JSX

Waysill: WCAG Checks for HTML and JSX

saffo

| (0) | Free
Lints HTML, JSX/TSX, Vue and Svelte templates for WCAG 2.2 issues (alt text, labels, headings, ARIA) and explains each fix.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Waysill: WCAG checks for HTML and JSX

Network use: none, except Pro license checks with Polar (details under Privacy below). Terms · Privacy policy · Refund policy · Docs

Waysill finds WCAG 2.2 accessibility problems in templates while you write them. Each finding explains what is wrong, who is affected and how to repair it, with short code examples plus a link to the matching W3C guidance.

An image without alt text, underlined in the editor, with the Waysill hover

Supported files

HTML, JSX/TSX (React and similar), Vue single-file components, Svelte.

What gets flagged

  • Images without alt text; image buttons, icon links lacking an accessible name
  • Form inputs without labels
  • Skipped heading levels and a missing main landmark (marked in the Structure view; in complete HTML documents also in Problems with waysill.bestPractices on)
  • Invalid ARIA roles, attributes, required children
  • Missing document language or title in complete HTML documents

Free features

  • Diagnostics in the open file on open and save, listed in Problems
  • Hover summaries plus a full explanation panel per finding
  • Quick fixes that insert missing attributes for you to complete
  • Headings and landmarks outline view
  • Disable comments for single lines when a rule does not apply: <!-- waysill-disable-next-line image-alt -->, in JSX {/* waysill-disable-next-line image-alt */}

The explanation panel next to the editor

Quick fix that adds an alt attribute

Waysill Structure view with headings and landmarks

Pro: paid, $49 per year

One license also unlocks the Waysill browser extension. Pro adds:

  • Workspace scan of every matching file, with a grouped report view
  • Baselines: commit .waysill-baseline.json so only new issues get flagged
  • Exports to SARIF (for code scanning uploads), CSV or Markdown

We sell Pro with Polar as merchant of record. Buy it on the pricing page, then run Waysill: Activate Pro License and paste the key from the purchase e-mail.

Waysill Report view after a workspace check

Commands

Command Tier
Waysill: Check Current File Free
Waysill: Explain Issue Free
Waysill: Show Headings and Landmarks Free
Waysill: Check Workspace (Pro) Pro
Waysill: Save Baseline (Pro) Pro
Waysill: Export Report (Pro) Pro
Waysill: Activate Pro License Free
Waysill: Deactivate Pro License Free

Settings

Setting Default Meaning
waysill.wcagLevel AA WCAG level to check against: A, AA or AAA
waysill.bestPractices false Also report axe-core best-practice rules
waysill.runOn open open (on open and save), save, or manual
waysill.exclude [] Globs the workspace check skips, on top of files.exclude and .gitignore
waysill.componentMap {} Components that render one HTML element, e.g. {"Image": "img", "Link": "a"}

Privacy

Everything runs locally inside the extension host. No telemetry is collected. Activating Pro sends your license key to Polar (api.polar.sh); after that it is confirmed at most once every 7 days. Free use sends nothing.

The key and its license status are kept in VS Code's SecretStorage (your system keychain). A baseline file stays in your workspace, under your own version control, and holds rule ids, file paths and element fingerprints, no code.

Limits

Static templates have no rendered layout, so colour contrast, target size or focus order cannot be measured here; the Waysill browser extension covers those. Values computed at runtime count as unknown, never guessed. Automated testing catches only part of all WCAG failures.

Built on open-source axe-core (MPL-2.0) running against a parsed copy of each file; template scripts never execute. Licenses of bundled packages: THIRD-PARTY-NOTICES.md.

Support: support@saffo.dev

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft