Building a more accessible GitHub CLI

How do we translate web accessibility standards to command line applications? This is GitHub CLI’s journey toward making terminal experiences for all developers.

Ryan Hecht
7 min readbeginner
--
View Original

Overview

The article discusses GitHub's commitment to improving accessibility in its command line interface (CLI). It highlights the challenges of making terminal applications accessible and outlines specific enhancements aimed at supporting users with disabilities, including screen reader compatibility and customizable color options.

What You'll Learn

1

How to enable accessibility features in the GitHub CLI using the command 'gh a11y'

2

Why customizing color options is crucial for terminal accessibility

3

How to implement a new prompting experience for screen readers in terminal applications

Key Questions Answered

What are the key accessibility improvements made to the GitHub CLI?
The GitHub CLI has introduced features for users who rely on screen readers, require high contrast, and need customizable color options. These enhancements aim to create a more inclusive experience for all developers using the terminal.
How does the GitHub CLI improve prompts for screen reader users?
The new prompting experience in the GitHub CLI utilizes Charm's open source prompting library to ensure that screen readers can accurately convey prompts, reducing confusion for blind and low-vision users.
What changes were made to progress indicators in the GitHub CLI?
The GitHub CLI replaced its legacy spinner with a static text progress indicator, providing relevant messages about the action being taken. This change improves clarity for users relying on screen readers.
Why is color contrast important in terminal applications?
Color contrast is vital in terminal applications as it helps users discern information. The GitHub CLI has aligned its color palettes to 4-bit colors to ensure better visibility against various terminal backgrounds.

Technologies & Tools

Library
Charm
Used for implementing the new prompting experience in the GitHub CLI.

Key Actionable Insights

1
Update the GitHub CLI to version 2.72.0 and run 'gh a11y' to explore new accessibility features.
This allows developers to experience the latest enhancements aimed at improving usability for all users, especially those with disabilities.
2
Consider the implications of color choices in terminal applications to ensure high contrast and visibility.
By aligning color palettes with user terminal settings, developers can create more inclusive applications that cater to users with visual impairments.
3
Engage with the GitHub community to provide feedback on accessibility features.
Participating in discussions can help shape future improvements and ensure that the needs of diverse users are met.

Common Pitfalls

1
Failing to account for the differences between terminal and web accessibility standards can lead to poor user experiences.
Without clear guidelines for terminal applications, developers may overlook critical accessibility features that are standard in web applications.

Related Concepts

Accessibility In Software Development
Command Line Interface Design
User Experience For Disabled Developers