RevLearning Tools
Small browser tools for writing accessible learning content
- Available
- Utility
- Browser · works offline · no account
- Free
- Vanilla JS · Vite · Vitest
A set of single-purpose checkers that each do one job on a piece of text or a colour pair, entirely in the browser.
An accessibility audit, or a substitute for one. They check what a machine can check, which is a useful fraction of the problem and nowhere near all of it. No tool tells you whether the alt text is *right*.
The tools
Contrast Checker — colour pairs against the WCAG ratios. ALT Text Helper — writing alt text that is useful rather than dutiful. Accessible Link Text Checker — finds “click here”, “read more” and the other phrases that are meaningless out of context, which is exactly how a screen reader user encounters them. Heading Structure Validator — levels that skip, duplicate or start in the wrong place. Readability Tool — reading level against the text you actually wrote. Inclusive Language Checker — flags wording worth a second look. Capitalization Tool, Markdown Cleaner, Filename Tool, Slug Tool, Palette Generator — the small jobs that are quick by hand and slow across two hundred files.
They are accessible themselves
Which sounds obvious for accessibility tooling and frequently isn’t.
Every tool re-runs its analysis on each keystroke. Writing that straight into
an aria-live region makes a screen reader talk over the user continuously —
worse than saying nothing at all. So the announcer holds the message until
typing pauses, drops repeats, and stays silent on first render, because nobody
wants a summary read at page load. The visible result still updates
immediately; only the spoken one waits.
Settings live in the URL. The contrast checker’s address carries the colours and the text size, so you can send someone the exact check you are looking at rather than describing it. Same for the other tools that have settings worth sharing.
214 tests across 24 files, covering both the pure logic — contrast ratios, readability scoring, slug and filename normalisation — and the DOM behaviour of each tool, including the announcer’s timing.
Why they exist separately
They are deliberately not one application. A single tool with eleven tabs is harder to use, harder to link someone to, and harder to keep working than eleven pages that each do one job.
Where they run
They live on this site, at /learning-tools/, and they look like it —
same typeface, same surfaces, same near-square corners. What they do not
borrow is the reading layout: an essay measure and generous section gaps are
right for prose and wrong for a form you are working in. Same standards,
different job.
Nothing you type in them is sent anywhere. There is no account, no upload and no server round trip — which is what makes them usable on content that is not yours to paste into somebody else’s service. In learning and development, that is most of it.