Accessibility
epher should work for everyone. This page describes how this website, the web app, and the command-line and terminal programs support assistive technology, what we hold them to, and what to do when they fall short.
In brief
We’re committed to making epher accessible for everyone. While we test against standard web guidelines, nothing replaces real human experience. If you run into any difficulties using epher or have ideas for improvement, please open an issue. We will address it as a priority.
What we hold ourselves to
epher targets WCAG 2.2 Level AA, the Web Content Accessibility Guidelines. Every change to this site and the web app is tested against that bar before it ships: an automated axe-core scan with zero violations required runs on every deploy, a deeper pass covers every interface language, text-spacing overrides, Windows High Contrast, and touch-target sizes, and the web app is hand-tested with a real screen reader. This is a self-evaluation, documented in the open repository; no outside auditor is involved.
What you can expect
- Keyboard. Everything works without a mouse: real links and buttons, a visible focus ring everywhere, a skip link at the top of every page, and Escape closes menus and dialogs.
- Screen readers. Controls are labelled, results are announced without stealing focus, and graphs carry a text caption naming what they plot. The web app is tested with VoiceOver, and control names are translated in all eight interface languages.
- Zoom and reflow. Pages reflow to 320px wide with no horizontal scrolling and stay usable at 200% zoom.
- Contrast and themes. Dark, light, and night themes all exceed WCAG contrast ratios: body text measures up to 17:1. Links are underlined, and nothing is conveyed by color alone.
- Reduced motion and high contrast. Animation is disabled when your system asks for reduced motion, and form boundaries survive Windows High Contrast mode.
- Languages. The interface ships in English, Chinese, Hindi, Spanish, French, German, Portuguese, and Arabic (right-to-left included), and screen readers switch voice with the language.
- Touch targets. Buttons and menu items meet the 44×44px best practice, well above the 24px AA minimum.
Known limitations
- On macOS, Chromium-based browsers do not deliver live-region announcements to VoiceOver, so a new result may not be spoken until you move focus; Safari delivers them.
- Graphs are visual. Each plot is named in text: the expression appears as a caption and inside the exported SVG, but the shape of a curve or surface is not described in detail.
- In the terminal, screen-reader support depends on your terminal emulator. The terminal app stays fully keyboard-operable and shows a text caption above plots.
Feedback
If anything here or in the apps is hard or impossible to use with your assistive technology, please open an issue on GitHub. Include your browser or terminal and the assistive technology you use; accessibility problems are treated as bugs.
Last reviewed: 1 November 2026.