Skip to content

Commit

Permalink
Plugins accessibility: add beginner-friendly docs (Leaflet#8047)
Browse files Browse the repository at this point in the history
  • Loading branch information
Malvoz authored Mar 9, 2022
1 parent a48e125 commit 2f192b4
Showing 1 changed file with 22 additions and 8 deletions.
30 changes: 22 additions & 8 deletions PLUGIN-GUIDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ This guide lists a number of best practices for publishing a Leaflet plugin that
- [Plugin API](#plugin-api)
3. [Content Accessibility](#content-accessibility)
- [Accessibility Testing](#accessibility-testing)
- [Learn about web accessibility](#learn-about-web-accessibility)
4. [Publishing on NPM](#publishing-on-npm)
5. [Module Loaders](#module-loaders)
6. [Adding to the plugins list](#adding-to-the-plugins-list)
Expand Down Expand Up @@ -141,16 +142,10 @@ Thus it's important to ensure components are keyboard-friendly,
and non-text content (such as icon fonts and images) either have a text
alternative or are hidden from screen readers if they're purely decorative.

Learn more about web accessibility:

- [WAI (Web Accessibility Initiative): Accessibility Fundamentals Overview](https://www.w3.org/WAI/fundamentals/)
- [ARIA in HTML (Accessible Rich Internet Applications)](https://www.w3.org/TR/html-aria/)
- [WAI-ARIA Authoring Practices](https://www.w3.org/TR/wai-aria-practices/)
- [Using ARIA](https://www.w3.org/TR/using-aria/)
- [WCAG (Web Content Accessibility Guidelines)](https://www.w3.org/TR/WCAG/)

### Accessibility Testing

#### Automated testing

Tools for automated testing can help you discover common accessibility issues:

- [Lighthouse](https://developers.google.com/web/tools/lighthouse/)
Expand All @@ -159,10 +154,29 @@ Tools for automated testing can help you discover common accessibility issues:
- [Accessibility Insights](https://accessibilityinsights.io/)
- [webhint](https://webhint.io/)

#### Manual testing

It is highly recommended that you test your components manually
using only your keyboard,
as well as using a screen reader such as Narrator, NVDA, VoiceOver, or JAWS.

### Learn about web accessibility

Beginner-friendly documentation:

- [What is accessibility?](https://web.dev/what-is-accessibility/)
- [Make your site keyboard accessible](https://web.dev/accessible/#make-your-site-keyboard-accessible)
- [Understand semantics and basic screen reader support](https://web.dev/accessible/#understand-semantics-and-basic-screen-reader-support)
- More guides at [MDN web docs: Accessibility](https://developer.mozilla.org/en-US/docs/Learn/Accessibility)

Authoritative documentation:

- [WAI (Web Accessibility Initiative): Accessibility Fundamentals Overview](https://www.w3.org/WAI/fundamentals/)
- [ARIA in HTML (Accessible Rich Internet Applications)](https://www.w3.org/TR/html-aria/)
- [WAI-ARIA Authoring Practices](https://www.w3.org/TR/wai-aria-practices/)
- [Using ARIA](https://www.w3.org/TR/using-aria/)
- [WCAG (Web Content Accessibility Guidelines)](https://www.w3.org/TR/WCAG/)

## Publishing on NPM

NPM (Node Packaged Modules) is a package manager and code repository for JavaScript. Publishing your module on NPM allows other developers to quickly find and install your plugin as well as any other plugins it depends on.
Expand Down

0 comments on commit 2f192b4

Please sign in to comment.