[Feature] Accessibility #924

Closed
opened 2026-02-28 19:25:06 -06:00 by GiteaMirror · 1 comment
Owner

Originally created by @skymaiden on GitHub (Feb 10, 2024).

Verified feature request does not already exist?

  • I have searched and found no existing issue

💻

  • Would you like to implement this feature?

Pitch: what problem are you trying to solve?

Parts of the app currently don't work using only a keyboard or a screen reader.
There are also a few instances of low-contrast colours, and font sizes don't scale with browser preferences.

1 in 6 people worldwide has with a disability (1 in 4 in Europe and the USA). Addressing functional barriers, and making the product more compliant with international accessibility standards, will help users who have a disability, or who budget with someone who has a disability.

Describe your ideal solution to this problem

Below are some points of improvements that would be great to implement. I've started addressing some of them in a draft branch (https://github.com/skymaiden/actual/tree/a11y).

Keyboard users

  • General: add skip links
  • General: on open menu via Enter keypress, show focus inside the popup/menu
  • General: on close menu via keyboard (item activation via Enter keypress, or close via ESC keypress), return focus to button that invoked the menu
  • Sidebar: fix focus outlines
  • Sidebar: add keypress listener to "More" item
  • Sidebar: add keypress listener to "Add account" item
  • Budget page: use buttons in month count selector
  • Budget page: show hover-visible buttons on focus
  • Budget page: prevent keyboard access to hidden months
  • Budget page: use button for To Budget menu button
  • Budget page: use buttons on category groups (include arrow + name)
  • Budget page: consider keyboard-only behaviour on input fields... we might want to follow an ARIA design pattern like https://www.w3.org/WAI/ARIA/apg/patterns/grid/examples/data-grids/ (inside a setting if we don't want to modify existing keyboard behaviour)

Screen reader users

  • General: add "main" landmark role to main content
  • Sidebar: add "navigation" landmark role to sidebar
  • Sidebar: use lists in sidebar
  • Budget page: add aria-labels to icon buttons that are missing one

Visually impaired users

  • General: allow user zooming
    • remove minimum-scale=1, maximum-scale=1, user-scalable=no
    • use relative sizes for fonts, spacing, icons, etc (instead of px)
  • General: create accessible theme with compliant colour contrast

Teaching and learning

At a minimum we would need to write documentation for users about how to use the software with a keyboard.

We could also implement a help popup that shows on ? keypress (power users know that shortcut works on most web apps, but we could also document that on the website).

Originally created by @skymaiden on GitHub (Feb 10, 2024). ### Verified feature request does not already exist? - [X] I have searched and found no existing issue ### 💻 - [X] Would you like to implement this feature? ### Pitch: what problem are you trying to solve? Parts of the app currently don't work using only a keyboard or a screen reader. There are also a few instances of low-contrast colours, and font sizes don't scale with browser preferences. 1 in 6 people worldwide has with a disability (1 in 4 in Europe and the USA). Addressing functional barriers, and making the product more compliant with international accessibility standards, will help users who have a disability, or who budget with someone who has a disability. ### Describe your ideal solution to this problem Below are some points of improvements that would be great to implement. I've started addressing some of them in a draft branch (https://github.com/skymaiden/actual/tree/a11y). #### Keyboard users - [x] General: add skip links - [ ] General: on open menu via Enter keypress, show focus inside the popup/menu - [ ] General: on close menu via keyboard (item activation via Enter keypress, or close via ESC keypress), return focus to button that invoked the menu - [x] Sidebar: fix focus outlines - [x] Sidebar: add keypress listener to "More" item - [x] Sidebar: add keypress listener to "Add account" item - [x] Budget page: use buttons in month count selector - [x] Budget page: show hover-visible buttons on focus - [ ] Budget page: prevent keyboard access to hidden months - [x] Budget page: use button for To Budget menu button - [x] Budget page: use buttons on category groups (include arrow + name) - [ ] Budget page: consider keyboard-only behaviour on input fields... we might want to follow an ARIA design pattern like https://www.w3.org/WAI/ARIA/apg/patterns/grid/examples/data-grids/ (inside a setting if we don't want to modify existing keyboard behaviour) #### Screen reader users - [x] General: add "main" landmark role to main content - [x] Sidebar: add "navigation" landmark role to sidebar - [x] Sidebar: use lists in sidebar - [x] Budget page: add aria-labels to icon buttons that are missing one #### Visually impaired users - [ ] General: allow user zooming - [x] remove minimum-scale=1, maximum-scale=1, user-scalable=no - [ ] use relative sizes for fonts, spacing, icons, etc (instead of px) - [ ] General: create accessible theme with compliant colour contrast ### Teaching and learning At a minimum we would need to write documentation for users about how to use the software with a keyboard. We could also implement a help popup that shows on `?` keypress (power users know that shortcut works on most web apps, but we could also document that on the website).
GiteaMirror added the featureneeds votes labels 2026-02-28 19:25:06 -06:00
Author
Owner

@github-actions[bot] commented on GitHub (Feb 10, 2024):

Thanks for sharing your idea!

This repository uses lodash style issue management for enhancements. That means enhancement issues are automatically closed. This doesn’t mean we don’t accept feature requests, though! We will consider implementing ones that receive many upvotes, and we welcome contributions for any feature requests marked as needing votes (just post a comment first so we can help you make a successful contribution).

The enhancement backlog can be found here: https://github.com/actualbudget/actual/issues?q=label%3A%22needs+votes%22+sort%3Areactions-%2B1-desc+

Don’t forget to upvote the top comment with 👍!

@github-actions[bot] commented on GitHub (Feb 10, 2024): :sparkles: Thanks for sharing your idea! :sparkles: This repository uses lodash style issue management for enhancements. That means enhancement issues are automatically closed. This doesn’t mean we don’t accept feature requests, though! We will consider implementing ones that receive many upvotes, and we welcome contributions for any feature requests marked as needing votes (just post a comment first so we can help you make a successful contribution). The enhancement backlog can be found here: https://github.com/actualbudget/actual/issues?q=label%3A%22needs+votes%22+sort%3Areactions-%2B1-desc+ Don’t forget to upvote the top comment with 👍! <!-- feature-auto-close-comment -->
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#924