Assistive Technology on Sefaria
Six months ago, we gave ourselves a public deadline promising to complete serious improvements to our site's accessibility. Since then, our engineering team has been hard at work to live up to that promise. As the engineer primarily tasked with making that promise a reality, I wanted to share our update with you. We've been rolling out incremental updates to the site over the past several months, and today I'm proud to announce that users who access Sefaria with the help of assistive technologies can now enjoy a comparable experience throughout the site to those who do so without using them. The response from users who navigate the web using assistive technology has thus far been positive and promising:
"This is wonderful!! ... I'm really excited about using your site -- even from the little bit I saw today I can tell it's great and an entire new way of using a huge database. The edit box that takes you straight to the text is great, and for me as a translator, the bilingual layout is wonderful" - S.F., Jerusalem
"I discovered that while I can't read books without a tremendous struggle, I can see a computer or phone screen if the text is enlarged and the colors are reversed so the text is white on a black background. Sefaria provides exactly this functionality. By using Sefaria, I've been able to fully participate in my classes and have taken great advantage of the English translations, attached commentaries and connections to other texts. My mental state has been much improved by the ability to continue this important part of my life while dealing with my disability. - R.F., Teaneck, NJ
We've learned a tremendous amount in the process. Years ago, when I first started building websites and online experiences, accessibility was a fairly easy thing to accomplish, as long as you used the right HTML tags, and included the proper alt and title tags to help screen readers identify elements of the page that were invisible to users.
However, as the complexity of a web app increases, so too does the markup required to ensure that the site is visible to screen readers and other assistive technology. We had to work on:
- properly representing a multi-panel view for non-sighted users
- ensuring the cursor ends up in the right place when a modal gets opened via a keyboard press
- tagging and describing icons and other clickable elements so that assistive technology can appropriately represent them to our users and be be navigable by keyboard and a variety of assistive technology, in English and in Hebrew.
You can see our current guidelines for our engineering team here: https://github.com/Sefaria/Sefaria-Project/wiki/Accessibility-&-Sefaria
Ensuring Sefaria was navigable by screen readers was the primary goal of this accessibility overhaul — though we know the changes we made will have a positive impact on those who use a variety of assistive technology. We tested primarily with the latest version of JAWS in Internet Explorer and Chrome, but also used NVDA and Apple's built-in VoiceOver reader. Much like the differences between web browsers, these assistive technologies "see" and render the site differently, and while different users have their favorite tools, we believe that Sefaria is best experienced by screen reader using the combination of JAWS and Chrome.
That said, there’s still work to do. Our source sheets are now readable and navigable by anyone visiting the site, but it is still more difficult than it ought to be for non-sighted users to create and edit their own sheets. We're certain that we will discover additional errors, bugs, and lapses in user experience, like we do for most of the tools we build. As we've said previously, Sefaria’s mission is to make the texts of the Jewish tradition accessible to everybody. If you are having specific issues with particular features or pages, we want to hear from you. Let us know at email@example.com
A special thank you to Lauren Tuchman who not only brought this larger matter to our attention but who worked with us to test various designs and solutions.