Sobre el proyecto

Jetz es un framework de JavaScript componible para crear interfaces web reactivas usando JavaScript declarativo, inspirado en Jetpack Compose. Permite a los desarrolladores construir árboles DOM con llamadas a funciones simples (por ejemplo, div, button, p) sin depender de JSX, compilación en tiempo de build ni lenguajes de plantillas. Sus capacidades clave incluyen: - Composición declarativa de UI: los elementos HTML se exportan como funciones JavaScript componibles. Los elementos aceptan cadenas, números, elementos hijos, objetos (para atributos/propiedades), helpers de CSS y estados reactivos como argumentos. - Gestión de estado reactivo: stateOf para estado de valor único de grano fino, rememberOf para estado sincronizado con localStorage, y computed para valores derivados con seguimiento automático. - Sistema de componentes: los componentes pueden definirse como funciones o clases que extienden Component, con hooks de ciclo de vida (onCreate, onMount, onUpdate, onDestroy). - Colecciones reactivas: listOf y sequenceOf para arrays observables, con loop para reconciliación de listas con claves y reciclaje de elementos DOM en O(1). - Renderizado condicional: _if, _elseif, _else e ifElse para cambio declarativo de ramas. - Enlace de datos bidireccional: propiedad bind para sincronizar elementos de entrada con el estado. - Enrutamiento y navegación: enrutamiento SPA del lado del cliente con Router, route, link y middlewares/guards de ruta. - Estado de sesión: JetzSession y sessionOf para almacenes reactivos clave-valor respaldados por sessionStorage. - Utilidades DOM: métodos helper fluidos como find, findAll, attr, addClass en elementos. - Efectos secundarios: effect para efectos con seguimiento automático y limpieza. El framework se empaqueta con Rspack y se distribuye como paquete npm (@daevoft/jetz).