The article recommends a skip link. Because my app is so small, I don't think this is necessary (it would actually take longer to get to the content if a skip link was implemented).
I don't need to signal to the screen reader that a link in the collection has been routed to, because there are no links in no collections!
Should I make all possible changes in this task?
No
Not all of the possible changes are relevant to this task or this user story.
I'll write down what is relevant in the method section below, then write an Issue handling what else I need to change and in what artefact I should do it
🛫 Method
[x] Ensure I'm setting the text content's language (on the html tag)
[x] Set the page title when I go between the sign in screen and primary room
[x] Sign in screen
[x] Primary room
[x] Read FreeCodeCamp's tips on making elements focusable -- here, all I needed to do was ensure the focus ring colour contrasted against the normal border well enough!
[x] Read the marcus.io blog post on improved accessible routing in Vue.js -- anything to do here?
[x] Focus management (using outermost container as a fallback since we don't have a skip link)
[x] Set tabindex="-1" on the outermost wrapper element + set route wrapper focus on each route transition (following advice on accessible-app.com instead)
[x] Use vue-announcer to announce newly loaded content after route transition
[x] Anything to learn from https://accessible-app.com/? Nope -- except that we need progress indication on the sign in page. Added that to the relevant issue.
[x] Read Marcus' 'Accessible Vue' -- anything to implement from this?
🏖️ Definition of done
🏕️ Problem-solving
🎠 Explore the problem
A FreeCodeCamp article on the subject.
Accessible Vue -- a book about the subject
Is my accessibility auditing up to snuff?
Can someone navigate my pages easily with a keyboard?
Can someone navigate my pages easily with a screen reader?
Is Vue Router accessible?
Should I make all possible changes in this task?
🛫 Method
BaseTextInput
component that includes aninput
element and alabel
element (forces me to use labels!). Seems like too much work for so little value. I'll just remember to use labels for now.📝 Notes