MathJax Accessibility extensions
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.


MathJax extensions for accessibility features (with demos).


The source code is hosted on GitHub at mathjax/MathJax-a11y.


The documentation can be found at /docs. Slides from Volker Sorge's talk at CSUN 2016 are also available.

Live tests


To build the distribution repository for the MathJax Accessibility extension, just call grunt with the default task.

npm install --only=dev && grunt

Note that this repository heavily depends on SRE

Build order as implemented in the Gruntfile

  • Prep dist folder
  • Clone speech-rule-engine
  • Install npm dependencies for speech-rule-engine
  • Run make mathjax in speech-rule-engine to build an optimized version
  • Copy lib/sre_mathjax.js and lib/wgxpath.install.js to dist
  • Copy subdirectories from src/mathmaps to dist
  • JSON minify json files in mathmaps
  • Minify src/mathmaps/mathmaps_ie.js to dist/mathmaps
  • Minify extensions/\*.js to destination dist
  • Copy invalid_keypress.mp3 and invalid_keypress.ogg to dist
  • Clean up: remove speech-rule-engine folder

Generated files

The build process will generate the following files:

  • The minified versions of the assistive technology extension files.
  • The closure compiled version of the speech rule engine.
  • A single file that combines all of the above.
  • mathmaps_ie.js: File with JSON objects that is loaded by the speech rule engine if it runs on IE or Edge.
  • mathmaps: JSON files that are loaded by the speech rule engine if it runs in any other browser or environment.
  • wxpath.install.js: A copy of wicked-good-xpath for use in IE and Edge.