Skip to content

Accessible Math Reader

Screen-reader-first mathematical accessibility toolkit — convert LaTeX, MathML, and plaintext/Unicode math to speech, Braille, and accessible ARIA HTML.


What is AMR?

Accessible Math Reader (AMR) is a Python toolkit that bridges the gap between mathematical notation and assistive technology. It parses LaTeX, MathML, and everyday plaintext/Unicode math inputs and produces:

Output Description
Speech text Natural language descriptions at three verbosity levels
Braille Nemeth Braille Code (US) and Unified English Braille (international)
Audio files MP3 via Google Text-to-Speech
ARIA HTML Keyboard-navigable, screen-reader-optimized HTML

Three Ways to Use AMR

```python from accessible_math_reader import MathReader

reader = MathReader() print(reader.to_speech(r"\frac{a}{b}"))

→ "start fraction a over b end fraction"

```

bash amr "\frac{a}{b}" --speech amr "\frac{a}{b}" --braille amr --interactive

```bash pip install -e ".[web]"

Development mode (with auto-reload)

python app.py

Open http://localhost:5000

Production mode

python -m accessible_math_reader.server

Open http://localhost:5000

```

Installation Set up AMR on your machine
Quick Start Your first conversion in 2 minutes
API Reference Full Python API documentation
Input Formats Supported LaTeX & MathML syntax
Configuration Customize speech, Braille, and accessibility settings
Examples Common use cases and code samples
Architecture System design and module overview