Web components

Web components are a popular technique to build encapsulated HTML building blocks. To make them universally accessible, they have to be carefully designed.

At its core, the key design concept for an accessible, progressively enhanced web component is actually rather straightforward:

Web Components as Progressive Enhancement

2022

Reference projects and examples

Some a11y-focused, inclusively designed web components:

HowTo: Components – howto-tabs

If JavaScript is disabled, all panels are shown interleaved with the respective tabs. The tabs now function as headings.
2022

Add Responsive-Friendly Enhancements to `details` with `details-utils`

Over time I’ve collected a bunch of add-on utilities to enhance
with new features and functionality. […] I’ve decided to finally package those
helpers up and formally release them as a web component!
2022

ciampo/macro-carousel: Carousel as a Vanilla Web Component.

2021

Filament Group Modal | A simple, accessible modal dialog web component

2020

Critique

Why I don't use web components

2020