
Research
Security News
The Landscape of Malicious Open Source Packages: 2025 Mid‑Year Threat Report
A look at the top trends in how threat actors are weaponizing open source packages to deliver malware and persist across the software supply chain.
edx-custom-a11y-rules
Advanced tools
.. image:: https://github.com/openedx/edx-custom-a11y-rules/workflows/NodeCI/badge.svg?branch=master :target: https://github.com/openedx/edx-custom-a11y-rules/actions?query=workflow%3A%22Node+CI%22 :alt: GitHub CI
This package is intended to be used with Bok Choy's interface to aXe Core accessibility auditing library <http://bok-choy.readthedocs.org/en/latest/api_reference.html#module-bok_choy.a11y.axe_core_ruleset>
_.
lib/custom_a11y_ruleset.js
contains some custom edX accessibility rules, written to be compatible with aXe core.
Please review the Bok Choy documentation <http://bok-choy.readthedocs.org/en/latest/api_reference.html#module-bok_choy.a11y.axe_core_ruleset>
_ for details about how to include custom rules
in a page audit.
Install from github with:
.. code:: bash
npm install edx/edx-custom-a11y-rules#v0.1.0
Make sure npm is installed, then:
.. code:: bash
git clone https://github.com/openedx/edx-custom-a11y-rules.git
cd edx-custom-a11y-rules
make develop
New Rules and Checks should be written in lib/custom_a11y_rules.js
.
aXe Core development guide for Rules <https://github.com/dequelabs/axe-core/blob/master/doc/developer-guide.md#rules>
_
aXe Core development guide for Checks <https://github.com/dequelabs/axe-core/blob/master/doc/developer-guide.md#checks>
_
There are Jasmine tests for checking that the custom rules
behave as intended and that they can integrate with aXe Core.
These can be run in "dev" mode, which keeps the browser up
for debugging, or in "single-run" mode to run once and exit.
See the Testing checklist
_ below for more details about writing
tests.
To run tests for the custom ruleset in "dev" mode:
.. code:: bash
make test-dev
To run tests for the custom ruleset in "single-run" mode:
.. code:: bash
make test
Additionally, to check code quality with JSHint, use:
.. code:: bash
make quality
Testing checklist
Write sample html files with the examples of pass/fail cases in test/fixtures/
. These are the fixtures that will be used for tests.
If you are writing a Check, add the test cases for your check to specCases
in test/spec/checks_spec.js
.
If you are writing a Rule, add the test cases for your rule to specCases
in test/spec/rule_spec.js
.
If needed, any new integration tests can go in test/spec/integration_spec.js
.
When you have merged changes via a reviewed PR, update the version number in package.json
,
and publish the new version to npm using npm publish
.
If you need NPM permissions to publish a new version, send a request to front-end-dev@edx.org
.
FAQs
Custom rules for accessibility testing with aXe Core
The npm package edx-custom-a11y-rules receives a total of 575 weekly downloads. As such, edx-custom-a11y-rules popularity was classified as not popular.
We found that edx-custom-a11y-rules demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
A look at the top trends in how threat actors are weaponizing open source packages to deliver malware and persist across the software supply chain.
Security News
ESLint now supports HTML linting with 48 new rules, expanding its language plugin system to cover more of the modern web development stack.
Security News
CISA is discontinuing official RSS support for KEV and cybersecurity alerts, shifting updates to email and social media, disrupting automation workflows.