Una biblioteca de UI rápida, de unos 4 kB, compatible con React y con la misma API moderna de componentes, basada en un Virtual DOM.
infernojs/inferno
Una biblioteca JavaScript muy rápida, similar a React, para crear interfaces de usuario de alto rendimiento en el cliente y el servidor.
- Estrellas
- 16,452
- Forks
- 642
- Issues abiertos
- 36
- Último commit
- anteayer
¿Qué es?
Inferno es una biblioteca JavaScript similar a React para crear interfaces de usuario. Mantiene el modelo de componentes, el flujo de datos unidireccional y los conceptos de ciclo de vida de React, con especial atención a la velocidad de renderizado en tiempo de ejecución, sobre todo en vistas de datos en tiempo real y árboles DOM grandes.
La velocidad se consigue mediante optimizaciones en tiempo de compilación. Los plugins JSX de Inferno para Babel, SWC y TypeScript generan llamadas directas para crear vNodes en lugar de llamadas a createElement, y las etiquetas de hijos, como $HasVNodeChildren, permiten a los desarrolladores declarar la estructura de los hijos para que el entorno de ejecución pueda omitir la normalización. La biblioteca también ofrece linkEvent para evitar funciones flecha y llamadas a bind en los controladores de eventos, y permite renderizar en el servidor mediante inferno-server.
Inferno se diferencia de React en algunos aspectos: cuenta con un sistema parcial de eventos sintéticos, hooks de ciclo de vida en componentes funcionales y componentes de formulario controlados. No es compatible con React Native. JSX es opcional, ya que también están disponibles hyperscript y createElement.
Funciones clave
- 01API de componentes similar a React, con flujo de datos unidireccional y métodos de ciclo de vida conocidos
- 02Eventos de ciclo de vida en componentes funcionales, una función que React no ofrece
- 03Sistema parcial de eventos sintéticos y helper linkEvent para evitar bind y los cierres
- 04Renderizado en el cliente y el servidor mediante inferno-server e hydrate
- 05Componentes controlados para input, select y textarea
- 06Plugins JSX en tiempo de compilación para Babel, SWC y TypeScript
Casos de uso
- Crear paneles o vistas de datos en tiempo real que se actualizan con frecuencia
- Renderizar árboles DOM muy grandes donde importa el rendimiento en tiempo de ejecución
- Migrar una aplicación de frontend pequeña al estilo de React a un entorno de ejecución más ligero
- Crear aplicaciones web renderizadas en el servidor que necesitan hidratación en el cliente
Inicio rápido
- 1
Instala el paquete principal
npm install --save inferno - 2
Instala un plugin de compilador JSX para Babel
npm install --save-dev babel-plugin-inferno - 3
Renderiza un componente en un elemento DOM mediante la función render
Antes de usarlo
- Inferno no es compatible con React Native.
- Inferno no admite las referencias de cadena heredadas, por lo que el código que dependa de ellas debe modificarse.
- Las optimizaciones de Inferno para JSX en tiempo de compilación requieren la versión correspondiente del plugin de compilador de Inferno.
Temas
Preguntas frecuentes
- ¿Qué es inferno?
- Una biblioteca JavaScript muy rápida, similar a React, para crear interfaces de usuario de alto rendimiento en el cliente y el servidor. Inferno es una biblioteca JavaScript similar a React para crear interfaces de usuario. Mantiene el modelo de componentes, el flujo de datos unidireccional y los conceptos de ciclo de vida de React, con especial atención a la velocidad de renderizado en tiempo de ejecución, sobre todo en vistas de datos en tiempo real y árboles DOM grandes.
- ¿inferno es gratuito? ¿Qué licencia tiene?
- inferno es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿inferno sigue mantenido?
- Mantenimiento activo. El último commit de inferno fue el 23 oct 2026.
- ¿Para qué puedo usar inferno?
- Crear paneles o vistas de datos en tiempo real que se actualizan con frecuencia Renderizar árboles DOM muy grandes donde importa el rendimiento en tiempo de ejecución Migrar una aplicación de frontend pequeña al estilo de React a un entorno de ejecución más ligero Crear aplicaciones web renderizadas en el servidor que necesitan hidratación en el cliente
- ¿Cómo se instala inferno?
- Instala el paquete principal: npm install --save inferno Instala un plugin de compilador JSX para Babel: npm install --save-dev babel-plugin-inferno Renderiza un componente en un elemento DOM mediante la función render
- ¿Dónde consigo inferno?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/infernojs/inferno
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Una biblioteca declarativa de UI para JavaScript que compila JSX en actualizaciones reales del DOM con reactividad granular, sin Virtual DOM.
Omi es un framework de Web Components con JSX, reactividad basada en signals, router y compatibilidad con Tailwind, pensado para crear elementos personalizados reutilizables.
Bindings de Angular para Firebase JS SDK, con inyección de dependencias, observables de RxJS y API adaptadas a Angular para los servicios de Firebase.
Biblioteca de componentes de UI para React y lenguaje de diseño de nivel empresarial para crear aplicaciones web.
Framework de componentes de interfaz de usuario con Material Design para Vue, con componentes responsivos hechos a mano para crear aplicaciones web.