How we improved accessibility in GitLab’s new navigation

This post details the iterative process of improving accessibility in GitLab's new navigation redesign. Key contributions include: early and frequent accessibility reviews using low-fidelity prototypes and ARIA attributes; manual testing with popular screen reader and browser combinations (JAWS/Chrome, NVDA/Firefox, VoiceOver/Safari/iOS); logging findings into an epic for prioritization and re-testing; implementing specific ARIA attributes like `aria-expanded`, `aria-controls`, and `aria-current='page'`; including a 'Skip to main content' link; and excluding navigation content from focus order when collapsed. It also highlights the successful adoption of the `inert` HTML attribute, enabled by browser vendor Interop efforts, to manage interactive content visibility and keyboard focus for collapsed navigation elements, improving maintainability and robustness.