The ID Toolbox
← All tools

Course Accessibility Fixer

Drop in a Storyline .story project and the safe accessibility fixes are worked out for you: decorative artwork hidden, buttons named from what they open. You decide each image, give duplicate slide titles their own names, and add the missing heading. Out comes a new fixed copy, a report and a change log, with every change re-checked against your original. Read in your browser, never uploaded.

Free · No account · Your files never upload

Drop a .story file here

The Storyline 360 project file. Storyline does not need to be open. It is read in this tab and never uploaded, and your original is never changed.

What this does

Storyline’s Accessibility Checker is good at counting problems and slow to clear them. A typical course comes back with a hundred or more Level A findings, and most of them are the same few things: a divider line nobody marked decorative, the arrow artwork inside every button state, a hotspot with no name, two slides called the same thing. Fixing them by hand means opening every object’s accessibility settings one at a time. This reads the .story project file itself, works out which of those fixes are safe to make for you, puts the rest in front of you one image at a time, and writes a new fixed copy alongside a plain-English report and a change log of every setting it touched.

Why it runs in your browser

The courses that most need an accessibility pass are government, compliance and internal training, and those are exactly the files nobody is allowed to upload to a website. Your project is opened in this tab by code that came with the page. There is no server to send it to, and the fixed copy is built on your machine.

How it decides what is safe

Only a short list of changes is made without asking. Artwork inside a button’s states is hidden from screen readers when the button already has a name, because the name is what gets announced and the artwork only repeats it. A plain shape, line or divider is hidden only when it has no text, no triggers, nothing else points at it, it is not inside a clickable group, and its stored description talks only about shape and color. A clickable object with no name is named from what it opens, so an oval that shows the “Spending Limits” layer becomes “Open Spending Limits”. Anything clickable is never hidden, whatever a rule or a reviewer says. Charts, diagrams, quiz parts and anything a trigger changes always go to a person.

Every change is then checked before a file is offered. The new copy is read back from scratch and compared with your original: every file that should not have changed is the same byte for byte, the player menu is identical, nothing changed except the settings in the plan, and running the fixer again finds nothing left to do. Your original is never written to. If any check fails, no file is created.

Why the images need a person

Storyline stores an AI-generated description for most pictures, and the tempting move is to accept them all. They are often wrong in ways that matter. On one real course every heading graphic carried the same unrelated phrase, and thin divider lines were described as objects a learner should know about. Alt text is the meaning of a picture in context, which only someone who knows the course can judge. So each image is shown with its slide, the text around it and the stored suggestion as a starting point, and you write the alt text or mark it decorative. Groups show every picture and every line of text inside them. Decisions can be saved to a file and loaded again, so a long course can be reviewed over more than one sitting or by more than one person.

Titles and headings

Two slides with the same title fail the checker, but renaming a slide normally renames its entry in the player menu too, and the menu is often signed off wording. Here each duplicate gets a distinct title for screen readers while the menu keeps showing exactly what it showed before. A slide with no heading gets its title text published as a Heading 1, using a new style copied from the one the title already uses, so it looks identical on screen.

Two course settings the checker also counts are changed only when you say so. A scene with no title can be given one, which the player menu then shows as its section heading. A slide that moves on by itself when its timeline ends can be switched to wait for the learner to click Next; leave any slide that is meant to advance on its own. Clickable objects smaller than 24 by 24 pixels are listed in the report, but the tool never resizes anything.

Does it work

On a real 18-slide government course it took Storyline’s checker from 136 Level A findings to 0 at Level A and 0 at Level AA, with the course unchanged on screen.

What it will not do

A clean checker is not WCAG certification, and nothing here claims it is. Keyboard order, what a screen reader actually says, captions and color contrast still need a person and real assistive technology. The fixer changes accessibility settings and slide titles, plus scene titles and slide advance only when you tick them. It never edits content, triggers, states, layers, the timeline, audio, quizzes or variables, and it does not move, resize or delete anything. Always open the fixed copy in Storyline, run its Accessibility Checker, and preview the slides the report lists under “What to click” before you publish. It reads Storyline 360 project files; published packages and Rise courses are not supported.

Related tools