Treinta y tres componentes accesibles, un conjunto finito de utilidades y tokens de diseño como contrato visual. Enlaza una hoja de estilo y ya estás construyendo: HTML plano, WordPress, Astro o cualquier empaquetador.
Cada clase, token, atributo y evento sigue el mismo contrato con prefijo, así que lo que aprendes en la primera página te sigue sirviendo en la última.
Funciona antes que el JavaScript
Los enlaces navegan, los botones actúan y los controles nativos hacen su trabajo. Los componentes de contenido no necesitan ni un script; los interactivos mejoran marcado que ya funciona y lo devuelven tal cual en destroy.
Un token repinta el sistema
Pon --iv-color-primary o --iv-radius-md en cualquier ámbito y todos los componentes te siguen. Los temas claro, oscuro y del sistema vienen de serie y no necesitan JavaScript.
JavaScript solo donde se gana el sitio
init idempotente, destroy limpio, eventos cancelables, patrones de teclado de la APG, sin observadores globales, sin eval e importaciones seguras al renderizar en el servidor.
Archivos, no una cadena de build
CSS en capas y plano, una hoja por componente, módulos ES con exports reales, un IIFE con un solo global, tipos de TypeScript y los tokens en JSON.
<div class="iv-tabs" data-iv-component="tabs" data-iv-activation="automatic">
<div class="iv-tabs__list" aria-label="Plans">
<a class="iv-tabs__tab" href="#p-monthly" id="t-monthly">Monthly</a>
<a class="iv-tabs__tab" href="#p-yearly" id="t-yearly">Yearly</a>
<a class="iv-tabs__tab" href="#p-enterprise" id="t-enterprise">Enterprise</a>
</div>
<section class="iv-tabs__panel" id="p-monthly">
<h3 class="iv-tabs__heading">Monthly</h3>
<p>29 € per seat and month. Every feature of the yearly plan, billed at the end of each period and cancellable at any time.</p>
</section>
<section class="iv-tabs__panel" id="p-yearly">
<h3 class="iv-tabs__heading">Yearly</h3>
<p>24 € per seat and month, billed once a year. Includes two additional sandbox environments and priority support during business hours.</p>
</section>
<section class="iv-tabs__panel" id="p-enterprise">
<h3 class="iv-tabs__heading">Enterprise</h3>
<p>Custom pricing with a signed service level agreement, single sign-on and a named technical contact. Talk to sales to get a quote.</p>
</section>
</div>
Pon data-iv-theme en cualquier elemento y esa rama de la página cambia de tema. Las elecciones explícitas ganan a la preferencia del sistema, los ámbitos se anidan y nada necesita almacenamiento ni script.
Instálalo desde npm, o copia dist/ junto a tu página y enlaza una hoja de estilo y un módulo. Sin archivo de configuración, sin plugin y sin compilador. La plantilla inicial y las cuatro recetas son exactamente esto y nada más.
v1.0.0 con licencia MIT. Qué es público, y cómo puede cambiar, está escrito en estabilidad. Los tamaños de arriba se miden sobre los archivos que se distribuyen, en tiempo de build.