Introduction

    Accessibility Standards helps ensure that people with diverse abilities can access and use software effectively, contributing to more equitable outcomes. Using this system is just the first step; having components and guidelines alone will not make our products accessible. It will require correct implementation and effort above what we can provide here to make that happen. Forge strives for conformance with relevant sections of WCAG 2.2 AA accessibility guidelines. Additionally, while there are standards and practices captured in this document, Forge does not have a current plan to test or audit applications, leaving adoption of guidelines to product teams.

    Key Takeaways

    • Accessibility in software is essential for delivering equitable solutions to all users.
    • Different user groups have varying needs; software designers must consider these needs to ensure usability.
    • Following established accessibility standards enhances compliance and reduces legal risks.
    • Implementation of accessibility principles is not only ethically necessary but can also improve overall user experience, mitigate user errors.
    • Forge currently supports keyboard/non-mouse interactions with all components. We also provide guidance around font sizes, color usage and other topics related to design implementation.
    • Forge does not specifically support screen-readers. While this support is best practice, and noted as such in this document, the implementation of assistive technology needs to be handled independently by product teams.

    Accessibility Principles

    Accessibility principles guide the design and development of healthcare software to be more inclusive. The World Wide Web Consortium’s (W3C) Web Content Accessibility Guidelines (WCAG) offers the foundational principles known as POUR (Perceivable, Operable, Understandable, and Robust). Applying these principles helps ensure access for diverse user populations.

    1. Perceivable: Information and user interface components should be presented in ways that all users can perceive, such as alternative text for images or captions for videos.
    2. Operable: Users should be able to navigate the software easily. For instance, providing keyboard navigation options benefits those with limited mobility.
    3. Understandable: The content should be clear and intuitive to interpret, with predictable navigation and instructions.
    4. Robust: Content must be robust enough to work across different devices and assistive technologies.

    Types of Impairments

    Technology and assistive tools (such as screen readers) help make the web usable to people with disabilities and other impairments. But these tools can't do all the work on their own. For these tools to provide a good experience to their users, applications need to be created using specific accessibility practices. The Forge team builds accessibility into its design system to address 3 types of impairment or disability visual, motor, and cognitive. These cover several conditions and situations and affect different areas of the user experience (see table below).

    Type of ImpairmentNeedImplementation/Mitigation
    Visual
    • Partial sight loss (from age or illness)
    • Color blind/deficient
    • Low-quality monitor
    • Use colors with a sufficient contrast ratio
    • Ensure that all visual information is available in text alternatives or audio descriptions.
    • Assure font size is appropriate for user’s distance from the screen
    • See our Color Guidance Principles
    Motor
    • Fine motor control difficulty makes small targets difficult.
    • Inability to effectively use a mouse.
    • Optimize the interface for non-mouse users.
    • Provide adequate space between clickable items and target areas that are suitable.
    Cognitive
    • Memory problems
    • ADHD
    • Dyslexia, Dyscalculia
    • Distracting environment
    • Multitasking
    • Speaking English as a second language
    • Provide instructions using clear and concise language.
    • Avoid complex layouts.
    • Offer customizable settings.

    Why This Matters

    1. More people can use our products when they're accessible.
      • We want a wide range of people to use our products and to enjoy using them. When we build for accessibility, we welcome more possible users. By meeting them where they are, we tell them that they matter to us.
      • In the healthcare arena, people with disabilities face challenges both as providers and patients. By accounting for accessibility in our products, we're helping to address these problems.
    2. Lack of accessibility can lead to legal problems.
      • Inaccessible websites' gaps in usability may be considered discrimination. One way that people have approached this problem is through legal action.
      • This isn't limited to government web technology, which is required by law to be accessible (specifically, Section 508 of the Rehabilitation Act). Epic was sued in January 2019 for the lack of accessibility in its EHR software.
    3. Anyone may need these features temporarily or in certain situations.
      • It's not just people with ongoing conditions who benefit from accessibility features. All of us may have a temporary issue or a situation that limits how well we can use technology. For example
        • Having a broken arm that makes it hard to use a mouse
        • Using a mobile phone with one hand while holding an infant with the other /li>
        • Being stuck with a low-quality monitor that renders colors and visuals poorly
        • Working in a high-distraction environment such as an ER front desk (which can tax users' cognitive abilities)
    4. More people may benefit from these features than just the target users.
      • A feature built to help users with a specific need or disability can end up helping other users, too. For example
        • Designing for keyboard-only use helps both people who can't use a mouse and data entry power users who save time by not switching between mouse and keyboard.

    Accessibility Guidelines by Principle

    1. Perceivable

      • Color
        • Ensure that there is sufficient color contrast between text and background elements to make it easier for individuals with visual impairments to read and understand the content. Use color contrast tools to verify that your software meets the recommended contrast ratios:
          • At least 4.5:1 (ideally 7:1) for text 14 pt (regular weight) or smaller
          • At least 3:1 (ideally 4.5:1) for text 14 pt (bold weight) or larger
          • NOTE: Per WCAG recommendations 'text or images of text that are part of an inactive user interface component, that are pure decoration, that are not visible to anyone, or that are part of a picture that contains significant other visual content, have no contrast requirement.'
        • The Forge color palette has been designed to meet usability criteria and accessibility requirements (it's not just a matter of choosing which colors "look good").
        • See the Principles section of the Forge color guidance.
      • Typography & Readability
        • Selecting appropriate fonts and minimum font sizes is instrumental in making sure that users can clearly read content with minimum strain.
        • Allow users to easily resize text within your software without causing any loss of functionality or content. This is important for individuals with visual impairments who may need to enlarge the text for better readability.
        • Avoid overly stylized fonts that can hinder legibility.
        • Implement clear hierarchy in headings and content structure for screen readers.
        • For more information on Forge font practices see the Typography section in the Forge Design System Guidance.
    2. Operable

      • Navigation and Focus Management
        • Design intuitive navigation patterns that are locally consistent across pages.
        • Provide clear focus indicators for interactive elements.
        • Ensure all features are fully operable via keyboard for users with mobility challenges.
        • Include descriptive headings, logical tab order, and skip navigation options to help users easily navigate and understand the structure of the software.
      • Forms and Data Input
        • Include sufficient spacing between form fields and ensure keyboard accessibility.
        • Implement ARIA (Accessible Rich Internet Applications) roles for custom controls. These provide information to help assistive technology interpret the screen's hierarchy and elements.
    3. Understandable

      • Labeling, Instructions, and Copy
        • Conduct form accessibility audits to ensure that all form fields are properly labeled using the appropriate HTML attributes.
        • Measure the implementation by checking if form fields are programmatically associated with their labels and if error messages are clearly communicated and perceivable.
        • Offer clear instructions, prompts, and validation for forms and inputs.
        • Ensure that error messages and validation feedback are clear, descriptive, and easily perceivable. This helps individuals with disabilities understand and address any issues that may arise while using the software.
        • Avoid using complex jargon in messages.
      • Alternative Content
        • Provide alternative text for images and non-text content.
        • Add closed captions or transcripts to audio and video content.
        • Avoid autoplay media to prevent cognitive overload.
    4. Robust

      • Responsive and Adaptive Layouts
        • Ensure layouts adapt to different screen sizes and orientations.
        • Verify usability across a range of devices, including screen readers, magnifiers, and voice controls.
      • Assistive Technologies
        • Make sure that software is compatible with screen readers, which are assistive technologies used by individuals with visual impairments. This includes providing proper labeling for all user interface elements and ensuring that screen readers can accurately interpret and convey the information.
        • Conduct regular user testing with individuals with disabilities to gather feedback and identify any accessibility barriers or challenges.
        • Incorporate this feedback into the software development process to continuously improve accessibility.
        • Ensure that all functionality within your software can be accessed and operated using a keyboard alone. This is crucial for individuals who cannot use a mouse or other pointing devices.
        • Developers should review the documentation for Forge components. Components may have accessibility features that require implementation. For example, some include props for copy used specifically by screen readers to provide additional context. For the best results, test keyboard navigation and screen reader compatibility often, not just at the end of development.
      • User Testing
        • Conduct regular user testing with individuals with disabilities to gather feedback and identify any accessibility barriers or challenges. Incorporate this feedback into your software development process to continuously improve accessibility.
        • Measure the effectiveness of the software's accessibility by tracking the number and severity of issues reported by users with disabilities and incorporating their feedback into iterative design improvements.
      • Documentation and Training
        • Create detailed documentation to guide designers and developers in creating accessible components.
        • Offer training to staff on accessibility standards, assistive technologies, and inclusive design principles.

    Reporting Accessibility Issues in Forge

    If you spot any areas where accessibility support is missing or could use improvement, please report them via the Forge Teams Channel.

    Resources and Tools

    Testing Tools and Checklists

    Development

    Color and visual testing

    Screen readers

    Other tools and checklists