Веб-компоненты
Набор веб-стандартов для создания переиспользуемых, инкапсулированных HTML-элементов, не привязанных к фреймворку: Custom Elements (собственные теги), Shadow DOM (инкапсуляция) и HTML Templates. Стандартная альтернатива компонентам фреймворков.
Три опоры: Custom Elements — собственные элементы (<my-card>) со своей JS-логикой и жизненным циклом; Shadow DOM — изолированное дерево DOM и стилей, так что CSS элемента не утекает наружу, а CSS страницы не просачивается внутрь; HTML Templates (<template>) — инертная разметка, которую клонируют по мере надобности. Выигрыш: компоненты работают в любом фреймворке или без него, с настоящей инкапсуляцией, на стандартах, которые не устаревают. Применение: дизайн-системы для нескольких команд и фреймворков (Shoelace, Adobe Spectrum), встраиваемые виджеты. Цена: для написания приложений это многословнее фреймворка, а экосистема меньше. Библиотеки вроде Lit делают их приятнее в работе.