Accessibility Statement
Last Updated:
I’m committed to making this site usable by as many people as possible. This is an immersive, highly visual portfolio with animated transitions and WebGL effects; I actively design and test with accessibility in mind and iterate continuously.
Conformance status
This is a self-assessed accessibility statement; no formal third-party evaluation has been conducted.
This website is partially conformant with the Web Content Accessibility Guidelines Version 2.1 at Level AA (WCAG 2.1 AA). "Partially conformant" means that some parts of the content do not fully conform to the accessibility standard. Given the interactive and visually complex nature of this portfolio, I am prioritizing improvements that most directly impact screen reader users, keyboard-only users, and visitors with motion sensitivity.
Measures in place
Robust focus management
During section transitions, keyboard focus is programmatically moved to the most relevant element in the new section. All off-screen sections are temporarily set inert to avoid focus traps and ensure a single, clear reading order.
Live announcements for content changes
A visually hidden aria-live region announces the current section title after transitions and on initial load, so screen reader users are notified without needing to explore manually.
Motion preference support
When prefers-reduced-motion is enabled: immersive WebGL/GSAP effects are paused or disabled (including the hero particles, the About image effect, and the Contact raymarching scene); page transitions are simplified and shortened. If you change this preference while the site is open, the effects respond immediately without reloading.
Decorative effects hidden from assistive tech
WebGL canvases used for purely visual atmosphere (Three.js) are removed from the accessibility tree with aria-hidden="true", role="presentation", and tabindex="-1".
Correct semantic structure
Headings form a logical outline (e.g., section titles use h2, subheadings use h3), improving navigation for assistive technologies that rely on heading shortcuts.
Accessible internationalization and URL mapping
The language switcher is operable with keyboard, conveys state, preserves focus on change, and maps localized slugs (e.g., /en/privacy ↔ /de/datenschutz; /en/imprint ↔ /de/impressum; /en/accessibility ↔ /de/barrierefreiheit) while preserving query and hash.
Predictable scroll behavior
The immersive home uses a controlled section navigator; legal and content subpages use native vertical scrolling to ensure compatibility with assistive technologies.
Known limitations
- Complex visual effects: While decorative and hidden from assistive tech, WebGL effects may distract some users. Enabling reduced motion helps tone down visuals. I’m planning a site control to pause animations.
- Reduced‑motion coverage: All major immersive WebGL effects now pause/disable under reduced motion; a few brief micro‑animations may still play. I’m continuing to audit and simplify remaining motion.
- Alternative descriptions for media: Static images have alt text; I continue to review descriptive quality, especially for project imagery that conveys meaning.
Feedback and contact
If you encounter any accessibility barriers not listed here, please contact me:
Email: mika.mueller.work@gmail.com. I aim to respond within 5 business days.
Technical specifications
Accessibility relies on HTML, CSS, JavaScript, and WAI‑ARIA. The site is built with SvelteKit and Three.js; progressive enhancement is used so content remains available even if advanced effects are disabled.
Ongoing improvements
- Broader reduced‑motion support for all continuous animations (including WebGL particle/raymarching effects).
- A “Pause animations” control to pause/stop decorative effects beyond system preferences.
- Periodic keyboard‑only and screen reader walkthroughs to catch regressions.
- Image alt text and link purpose reviews on new content.