Skip to main content

Command Palette

Search for a command to run...

Axe DevTools: quick introduction

"Shift-Left" Accessibility Without Leaving Your IDE

Published
3 min readView as Markdown
Axe DevTools: quick introduction
M

Front end developer, Accessibility advocate, Avid learner... I'm really just Another Coding Guy.

Let's be honest: how many projects have ended up rushing at the last minute to check accessibility? It usually happens right before deployment, leaving developers drowning in a sea of WCAG errors.

We often view accessibility (a11y) as a final "check," a chore to be handled in the browser. But what if I told you that you can catch those errors while writing the code, just like you do with JavaScript typos or style issues via ESLint? axe DevTools, developed by Deque Systems, is a tool that brings a portion of accessibility testing directly into your favorite workspace.

Why Should You Adopt the "Shift-Left" Approach?

In the software world, "Shift-Left" simply means moving tests as far to the left as possible in the development lifecycle. In practice? Test earlier.

The axe DevTools extension for IDEs lets you stop fixing accessibility "after the fact" and start writing it correctly "during" development. It’s a massive time-saver and, quite frankly, saves your future colleagues (or your future self in six months) a lot of headaches. A word of caution, though: as useful, versatile, and powerful as it is, axe DevTools—like any other tool—cannot guarantee 100% compliance with WCAG guidelines. Further manual testing will always be necessary.

Installation and Configuration

Getting started is easy and direct. You can find axe DevTools as an extension for Visual Studio Code, but Deque Systems offers solutions for various environments. Just head to your IDE's Marketplace, search for "axe DevTools," and hit install.

A quick IDE restart and you’re ready to go. It’s "plug-and-play" by default, but if you want to push the envelope, you can explore the settings to customize rules or integrate it into other workflows.

Using axe DevTools Like a Pro

Once installed, axe becomes your "accessibility conscience."

Real-Time Scans

As you write your HTML, React, or Vue code, axe analyzes it. If you forget an alt attribute on an image or mess up your heading hierarchy, you’ll see those familiar squiggly underlines. Even better, by opening the Problems panel, axe provides:

  • The exact position of the offending code.

  • Which WCAG rule you are violating (great for learning as you work).

  • Practical suggestions on how to fix the issue.

Integration with Testing

Many extensions allow you to run axe scans as part of your unit or integration tests. This means that if a component isn't accessible, the test fails. Period.

Advanced Configuration: The Power of axe Linter

If you want granular control, axe Linter is your best friend. It is highly configurable and allows you to tailor the analysis to your team's specific needs.

Customizing Rules

No two projects are identical. Through a configuration file (often a .yml or .axelinterrc), you can enable or disable specific rules. This way, in addition to general technical support, you can avoid "false positives" that sometimes occur in very niche use cases and establish shared company standards.

Working with dynamic components or third-party widgets you can't touch? You can use CSS selectors or specific attributes (like data-axe-exclude) to tell axe: "Hey, ignore this part, I know what I'm doing."

CI/CD Integration

A further leap in quality occurs by integrating axe into your Continuous Integration flow. Imagine a pipeline that blocks a Pull Request merge if someone introduces an accessibility regression. This is where the axe-core library shines, integrating with Cypress, Playwright, or Jest.

Conclusion

The axe DevTools extension isn't just a "testing tool"—it’s a silent tutor that helps you become a better frontend developer. Accessibility is no longer a luxury or an "extra"; it’s an integral part of our craft. Making its management easier makes our daily lives easier.

And you? Are you still waiting to hit "Inspect Element" only to find out you forgot your form labels?

Accessibility

Part 2 of 28

We'll talk about accessibility in the most practical way. Because a brave dev shouldn't be afraid of it =)

Up next

Zoom & Reflow Accessibility Requirement

Ways to Satisfy Zoom and Reflow Accessibility Needs