Learn how to build inclusive web applications and Single Page Apps in modern JavaScript frameworks. This project collects strategies, links, patterns and plugins for React, Vue and Angular.
Patterns
Showing Progress
Using animated progressbars is fine for visual users, but more often than not, screen readers remain silent when your app is in an interstitial (e.g. loading) state. Here is a strategy to prevent that.
- Vue
- React
- Angular
Menus & Dropdowns
Web-apps are full of interactive items that show a new container with links and options once you interact with them. A simple user experience pattern, but hard to get right if you want to build it with accessibility in mind
- Vue
- React
- Angular
Accessible routing
A Single Page Application consists of one single HTML document - anything else is being loaded without ever really navigating off of or reloading the page. This leads to accessibility challenges
- Vue
- React
- Angular
(Modal) dialog windows
A modal dialog requires a user's response and makes it mandatory to interact with it. Focus, both literally and proverbially, can't be moved away from the modal. Learn more about what to look out for when using dialog windows
- Vue
- React
- Angular
What makes web-apps special?
Web applications aim to emulate the experience of native apps by loading and displaying data in an asynchronous fashion ("AJAX"). This lack of full page reloads makes it hard for users of screen readers.
About accessible-app.com
This project aims to be a resource for inclusive modern JavaScript framework usage - so it needs contribution from people who specialize in accessibility regarding React, Angular and Vue. Got ideas, framework knowledge, feedback or want to contribute?
The Demo App "Accessibooks"
Reading about patterns in theory only gets you so far – often times you need a concrete example to learn. This is why Accessibooks SPA exists.