Skip to content

Why u-elements

In the early days of web development, crafting a website was like navigating a minefield of browser inconsistencies. With poor debugging tools and documentation, developers spent considerable time testing and tweaking their code just to make it work everywhere.

Thankfully, as the web evolved, so did our tools and practices. Today, browsers mostly adhere to web standards and their feature support is well documented.

However, one challenge often goes unnoticed; while browser development has accelerated, the landscape of assistive technology moves at a different pace. For instance, it's not uncommon for screen readers - the lifeline for visually impaired users - to become useless when encountering modern HTML or even (paradoxically) ARIA patterns. Debugging this is highly time-consuming, as the accessibility is affected by not only the browser, but also the operating system and screen reader, collectively.

u-elements aims to address this issue by providing W3C compliant re-implementations of modern HTML tags. They empower you to learn and use web standards, while also being confident that under the hood, your code gets augmented with thoroughly tested enhancements for screen reader compability. When all major browsers and assistive technologies sufficiently support an HTML element, you can simply remove the u- prefix to transition from the u-element implementation, to the corresponding native HTML element. No big rewrites. No custom APIs to learn. No opinionated styling. No framework dependence. Just HTML and DOM, but truly accessible for everyone.

Browse elements →

Released under the MIT License