TimelineTrack

Accessibility

This site is built to work without JavaScript, without a mouse, and without sight. That is not a compliance exercise, it is the only way the spoiler feature can actually be trusted.

What Works Without JavaScript

Almost all of it. The timeline, the summaries, the dates and runtimes, the full cast lists, the order switch, the content switches, the post-credit scenes, the spoiler reveals, the shareable filtered links and signing in all work with scripting turned off. The switches are links to real pages rather than buttons that rearrange one, the reveals are checkboxes and CSS, and the sign-in form is a real form that posts to a real address.

Two things need it, and there is no way around either.

Saving what you have watched on your own device needs local storage, and local storage needs JavaScript. Without it, ticking things off is not available to you while signed out — and because the spoiler baseline works out what to uncover from how far you have got, that is not available either. Every hidden name is still revealable by clicking it, one at a time or all at once.

Moving that saved progress into an account also needs it, for the same reason: the data being moved is in local storage, where only the browser can reach it.

Hidden Names And Screen Readers

A blocked-out character's name is inside an element marked hidden. That means it is genuinely not in the page for a screen reader, and not findable with your browser's find-in-page, until you reveal it. The control you land on announces only that something is hidden and roughly why — never the name, never the actor. There is a check in the build that refuses to ship if one of those labels gives the game away.

If the stylesheet fails to load, hidden names stay hidden. That is the direction this is built to fail in.

The Rest

  • Every page starts with a skip link to the main content.
  • The timeline is a real ordered list in real document order, so what a screen reader reads and what the numbers say always match. It is not reordered with CSS, which would break exactly that.
  • Every text and background pair clears WCAG AA. The worst on the site is 5.8 to 1. The measured ratio for each colour is written next to it in the stylesheet.
  • The site follows your system's light or dark setting.
  • Animation is switched off entirely if you have asked your system to reduce motion.
  • Focus outlines are visible and are never removed.

If Something Is Broken

It might be. Tell me and I will fix it, and I will not ask you to justify why it matters.