Cube es una librería de JavaScript diseñada para la animación de interfaces de usuario, que se distingue por su enfoque minimalista: no ofrece controles manuales ni parámetros ajustables, sino que define cuatro movimientos predefinidos —entrada, salida, cambio de estado y revelado por desplazamiento— con duraciones, curvas y retrasos fijos. Su arquitectura se basa exclusivamente en la Web Animations API y el IntersectionObserver, eliminando dependencias de runtime, bucles de animación o polyfills, lo que garantiza un rendimiento nativo y sin conflictos con el navegador.
La librería está disponible para React, Vue, Solid y Svelte mediante adaptadores opcionales, aunque el núcleo es agnóstico a la plataforma. Cube simplifica la implementación de transiciones complejas, como el desvanecimiento de opacidad, el cambio de escala o el desenfoque, en un solo comando. Por ejemplo, permite animar el orden de hijos con un retraso escalonado o manejar la visibilidad de elementos ocultos hasta que entren en el viewport. En cuanto a la física de la animación, Cube utiliza una curva cúbica fija en lugar de resolvers de resorte, lo que elimina la necesidad de ajustar la elasticidad. Además, integra la preferencia de 'reduced motion' para accesibilidad. El diseño asume que el desarrollador ya ha resuelto la lógica de negocio, por lo que la librería se centra únicamente en la presentación visual, ofreciendo una alternativa rápida para quienes buscan consistencia y rendimiento sin la sobrecarga de herramientas de animación generalistas.
