Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Accessibility #2425

Open
smythp opened this issue Apr 28, 2023 · 9 comments
Open

Accessibility #2425

smythp opened this issue Apr 28, 2023 · 9 comments

Comments

@smythp
Copy link

smythp commented Apr 28, 2023

Hi all,

Was looking into the accessibility of this library, and was wondering if there is any documentation or a status update on the current state of accessibility for screen reader users. I noticed issue #280 opened by @protodrew was automatically closed without a response. I feel that accessibility might be particularly important for a library like this, since it's an upstream framework that may affect accessibility for potentially hundreds or thousands of downstream applications.

Thanks, and interested to hear any thoughts.

@github-actions
Copy link

Thank you for your issue. Give us a little time to review it.

PS. You might want to check the FAQ if you haven't done so already.

This is an automated reply, generated by FAQtory

@davep
Copy link
Contributor

davep commented Apr 28, 2023

This is a consideration that is on our roadmap: https://textual.textualize.io/roadmap/

@willmcgugan
Copy link
Collaborator

The terminal has historically poor accessibility, and there isn't a great deal we can do to improve on it. However, when Textual web becomes a reality, we can implement more accessibility features. Given that Textual has a DOM, we're not limited by the unstructured matrix of characters of terminals. In theory we can do a lot more than TUIs running in the terminal.

But yes, accessibility is important to us.

@smythp
Copy link
Author

smythp commented May 1, 2023

I strongly disagree with the statement that the terminal has historically poor accessibility. It's a text interface, if anything it's one of the most accessible modalities for screen readers. Even TUIs and quasi-GUIs like curses are generally accessible these days with terminal screen readers like speakup. If apps created with the library are not accessible, I would not blame the terminal environment.

I'm not convinced that creating a web version will resolve accessibility issues, unless you plan on making the terminal portion of the framework superfluous in favor of the web entirely. Screen readers users are terminal users to a great extent, and use the terminal in preference to web interfaces just as users who do not use screen readers do. Due to the great accessibility of the terminal environment, in fact, I'd say screen reader users are disproportionately terminal users as well. I do feel like there is some responsibility here, given that any app created with textual would currently be inaccessible in a terminal, and would have been accessible if created with other terminal interface options like click or curses.

It's great to see the various accessibility features at the top of the roadmap, though I think that's an accident of the alphabet, ha. Thank you for your response. I understand that this is often a difficult issue for FOSS libraries, but I also feel that upstream libraries that don't implement accessibility cause serious issues for screen reader users. Potentially every TUI created with textual might have to be something screen reader users have to work around for years to come, in the worst case.

@mrkiko
Copy link

mrkiko commented May 2, 2023

Infact, terminal is very very much accessible and apreciated. :)

@glyph
Copy link

glyph commented May 26, 2023

if created with other terminal interface options like click or curses

I am very curious about this — how would a window-oriented curses application be more accessible than textual? What does curses provide that textual doesn't?

@mrkiko
Copy link

mrkiko commented May 26, 2023 via email

@mwcampbell
Copy link

When talking about the accessibility of terminal-based interfaces, we need to distinguish between line-oriented and screen-oriented interfaces. Line-oriented interfaces are very accessible with a screen reader. Some blind people have learned to use some screen-oriented programs, such as Pine, Lynx, and Mutt, and are apparently even happy with them. But other screen-oriented programs, like Links, have always been more of a problem, because of their complex layouts. (Incidentally, since most blind people use text-to-speech, and Lynx and Links sound alike, it's common to disambiguate them by saying "the cat" and "the chain".) I think TUIs built with Textual are more like Links (the chain) than Lynx (the cat) or Pine.

@willmcgugan do you have any plans yet for implementing screen reader accessibility in Textual web? How much is Textual web still dependent on terminal escape sequences?

@mrkiko
Copy link

mrkiko commented Aug 28, 2023 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants