A biblioteca JavaScript Inferno, similar ao React, chegou na versão 1.0 se apresentando como uma solução aos desenvolvedores familiarizados com React, mas frustrados com o tamanho das bibliotecas JS atuais.
O anúncio da Inferno a define como "Uma biblioteca JS extremamente rápida, baseada em React, destinada a construção de UI's modernas". É destinada aqueles que gostam dos conceitos e da API do React, mas não precisam de todos as funcionalidades que ele oferece, como a possibilidade de usar o React Native. A biblioteca Inferno é feita estritamente para o navegador, servidor e o DOM típico. Durante a requisição, a Inferno tem somente 9KB de tamanho comparado aos 45KB (ambos os tamanhos em gzip) do React. Isso faz com que a etapa para parsear o código seja mais rápida e, portanto, resulta em melhor desempenho nos dispositivos móveis.
A equipe focou boa parte do tempo de trabalho em desempenho. Em uma entrevista dada pelo criador Dominic Gannaway, ele destacou o trabalho feito:
Diversas checagens foram feitas para garantir que as "desotimização" ("deopts", quando o compilador JIT não consegue compilar alguma coisa) fossem mantidas minimamente. A equipe da Inferno usou benchmarks, ferramentas de análise como IRHydra 2 e Chrome Dev Tools e reescreveram partes da base de código como uma forma constante para encontrar formas de remover as "deopts".
Esse trecho de código mostra bem a semelhança entre Inferno e React.
class MyInfernoTest extends Component { componentDidMount() { setInterval(() => { this.setState({ time: (new Date()).toLocaleString() }); }, 200); } render() { return <h2> Current time: <span>{this.state.time}</span> </h2> } }
Em um post anunciando o release, o principal engenheiro do time, Luke Sheard, apontou que em 2016, o projeto conseguiu de 150 estrelas no Github para quase 7.300 no final do ano. Agora tem mais de 8.000. A Inferno pode ser usada como um substituto do React desde que seja usada uma biblioteca de compatibilidade, mas a melhoria no desempenho se obtém ao fazer mudanças no código específicas para a Inferno.
Este ano a equipe espera expandir o ecossistema do framework, mas terá que fazê-lo sem a presença constante de Gannaway. No final de 2016 Gannaway anunciou que ele se juntou ao Facebook para trabalhar no React. Sheard disse que a Inferno vai continuar a contar com uma participação mais reduzida de Gannaway e que eles irão focar em melhorar o core e aumentar o suporte da biblioteca.
Em 2017 a Inferno vai focar no aprimoramento contínuo de suas funções principais, analisando bugs o mais rápido possível e dando suporte e orientação à comunidade. Será feito um esforço para adaptar novas bibliotecas para expandir o alcance e a modularidade da Inferno para mais casos de uso. Até agora uma variedade de módulos já foram portados, mas com um esforço adicional da comunidade a intenção é expandir mais.
A biblioteca Inferno é novata se comparada a alternativa mais conhecida ao React, o Preact. Ambos podem ser usados no lugar do React, mas possuem objetivos de uso diferentes.