Back to Aurora

TRUST  ·  UPDATED

Accessibility

What this site was measured with, on what date, and what came back. Then the part most statements leave out: what that evidence does not cover.

This is a statement about the website at auroraisyours.com, written by the person who maintains it. It covers what has been tested and what has not, in that order, because the second half is the half you cannot get anywhere else.

No screen-reader pass has been performed. Every statement on this page about what a page announces comes from the Chromium accessibility tree, not from VoiceOver, NVDA or any other assistive technology. That is the single most important sentence here, and it is why this page does not claim conformance with WCAG 2.2 Level AA — only that the standard is what the site is written against, and what the measurements below were measured for.

Accessibility problem on this site? Write to hello@auroraisyours.com. Owner: Leandro Piccione, sole maintainer.

Contents

  1. The standard, and what this page is
  2. What was measured, and how
  3. What the evidence does not cover
  4. What the site does
  5. The contrast measurements
  6. Reporting a barrier

The standard, and what this page is

The site is written against the Web Content Accessibility Guidelines 2.2 at Level AA. That is a target and a design rule, and this page is a statement of position rather than a conformance claim: an automated rule pass over a subset of pages, plus one manual review by the maintainer, is not a conformance audit. No accessibility badge appears on this site, and none will until something has been done that would earn one.

The honest summary of where this site stands: the mechanical rules were measured and they pass, the keyboard and reflow behavior was walked by hand and it works, and nobody has yet listened to it.

What was measured, and how

The rule engine is axe-core 4.12.0. It is deliberately not a dependency of this repository: the bundle is fetched into the test harness and injected into the page over the browser's debugging protocol, which is not subject to the page's content policy — so nothing about the site's own script rules was relaxed in order to measure it. Every page is loaded twice, once per appearance, with both the system preference emulated and the site's own stored choice set, because the site honors the stored choice over the system one.

  • 18 September 2026 — the first pass. The writing index, an article, the Privacy Notice, the phone replica standalone and embedded, the 404 page and the landing page, in both appearances, driven by headless Chromium against the built site served by the real Worker. Every actionable violation it found was fixed in that pass and re-measured to zero: a shared micro-label at 4.26:1 raised to a measured 5.26:1, the replica's own three-step text hierarchy stepped down until every label clears 4.5:1 in both appearances, its instrumentation given per-appearance inks where light-on-light had measured 1.05:1, the standalone replica given a landmark and a heading, and the nine measurement tables in the articles made reachable by keyboard.
  • 21 September 2026 — this page, Security and the Changelog. Same engine, same method, all three new pages in both appearances at 1440×900 and at 390×844: zero violations. The record of that run is filed in this repository beside the earlier one, under docs/evidence/.
  • The manual pass. A full keyboard walk of the landing page and the access dialog, the dialog's focus entry, containment, return to the exact control that opened it and its Escape behavior; reflow at 320×640, at 390×844 and at 640×512, which is 1280 at 200% zoom; the reduced-motion state, where the count of running animations is zero at rest and stays zero while the dialog opens and moves between its pages. Four defects were found by that walk and fixed, including a live region that sat outside the modal — a modal dialog makes the rest of the document inert, and inert content is hidden from assistive technology, so every announcement was being spoken into content nothing could reach.
  • Lighthouse. Its accessibility category scores 100 on the four primary configurations measured on 18 September 2026 — the landing page and the direct link to the demo, mobile and desktop, six runs each with the first discarded and the median of five reported.

One Lighthouse configuration scores 97 rather than 100, and it is worth naming rather than rounding away. In the supplementary run with the live garden blocked, axe reports the wordmark at 1.07:1 against the dark-theme page color. That color is not what is behind the wordmark: on a phone the navigation bar stands over the hero frame, and the frame is holding a daylit still. axe cannot resolve contrast over an image and falls back to the nearest opaque ancestor. The same still was measured directly, pixel by pixel under the type, at 11.70:1 worst case.

What the evidence does not cover

  • No assistive-technology pass. VoiceOver and NVDA have not been run against this site. The fixes that concern announcement are specification-level fixes — a live region moved inside the dialog, names given to controls, decorative graphics hidden — and they have not been heard by anyone. An owner item is open for a VoiceOver pass on macOS and iOS.
  • The hero type over the live render is not measured. The heading in the garden stands on a WebGPU canvas, and neither a contrast rule nor a headless screenshot can read one: the rule compares the ink to the nearest declared background and gets a meaningless number, and the headless session does not composite the canvas into a capture at all. Over the static garden the same type measures 11.70:1 worst case for the heading and 4.82:1 worst case for the line under it. Over the live render it needs one pass in a browser with a real GPU, at the garden's own hour, and that pass has not been done.
  • The focus ring over bright sky is below the threshold it meets everywhere else. The ring measures 4.25:1 on paper, where a focus indicator owes its background 3:1 — but against the brightest part of the sky it measures about 2.5:1, so the two buttons that stand inside the garden have a ring that is under the threshold where it crosses that part of the render. A halo treatment for controls on the world is a design decision and it is the owner's to make; it is recorded rather than quietly patched.
  • Coverage is a subset, not the site. The rule pass covers the pages named above, not every page and not every state of every page.
  • The phone replica's own controls are the app's. The interactive replica on the landing page contributes 31 keyboard stops of its own. They are reachable and named, and they are the replica's interface rather than this site's chrome.

What the site does

  • Reduced motion is honored completely, not softened. Asking for reduced motion — or for reduced data — replaces the live garden with a still image, and the scroll-reveal engine is never armed at all. Transitions collapse to effectively nothing, the opening film does not play, and the page is complete without any of it.
  • Focus is always visible, in a green that was measured rather than chosen. The ring is the site's focus green, 4.25:1 against paper in the light appearance and 10.17:1 in the dark one. It replaced a brighter green that measured 2.63:1, below what a focus indicator owes its background.
  • No text ink is lighter than it measures. The faintest ink on the page is at 62% rather than the 45% the design originally named, because 45% carries real 12-to-13-pixel text and measures 3.0:1 on paper. The only thing allowed at the lighter value is decoration with no contrast duty.
  • The access dialog is a real dialog. Focus enters it, stays inside it, and returns to the exact control that opened it; Escape closes it; its status line lives inside the dialog, and the page's scroll position is identical before, during and after.
  • Nothing needs a pointer. The site draws its own scrollbar, and it is an indicator that can be dragged rather than the way to scroll: every surface that scrolls also scrolls with a keyboard, and each measurement table in the writing takes focus and moves with the arrow keys, labeled by its own caption.
  • Every page ships its whole text in the document. Nothing here waits for JavaScript to become readable: with scripting off, the pages read, the sections are all present, and the beta page prints the TestFlight link as a plain link. That is a constraint the site keeps for crawlers and it pays for itself here.
  • Structure is real. One skip link, one main landmark, named navigation and footer landmarks, headings in order with no level skipped, decorative graphics hidden from the accessibility tree, and the illustrations that carry meaning given a title and a description.

The contrast measurements

Computed colors, composited over the real background stack rather than assumed, measured 18 September 2026 in both appearances.

Measured contrast ratios. The threshold for body text is 4.5:1, for large text and focus indicators 3:1.
ItemLightDark
Body copy, footer links, navigation links8.068.85
Footer baseline, 13 px5.096.76
Label pill, 11 px4.686.18
Dialog lede and checkbox label8.189.65
Dialog footnote4.806.45
Focus ring against paper4.2510.17

Reporting a barrier

If something on this site cannot be read, reached or operated, write to hello@auroraisyours.com. What helps: the page, the browser and assistive technology you were using, and what you expected to happen instead. A report about the Aurora app itself is welcome at the same address.

You will get an answer from one person. There is no support rotation here and no promised response window, and inventing one would be the first untrue sentence on this page. A fix ships the way every correction on this site ships: the change and its entry in the site's public claim register in the same commit, and a release from the production branch.

See also

  1. Security — how this site is served, and its one server path.
  2. Changelog — what changed on this website, and when.
  3. Privacy Notice — what the app keeps on your device, and what this site stores.