Uma biblioteca de UI rápida e compatível com React, com cerca de 4 kB, a mesma API moderna de componentes e baseada em Virtual DOM.
solidjs/solid
Uma biblioteca declarativa de UI em JavaScript que compila JSX em atualizações diretas do DOM com reatividade granular, sem Virtual DOM.
- Estrelas
- 36,172
- Forks
- 1,136
- Issues abertas
- 36
- Último commit
- ontem
O que é?
Solid é uma biblioteca JavaScript para criar interfaces de usuário. Em vez de usar um Virtual DOM, seus templates JSX são compilados em nós reais do DOM, e as mudanças de estado atualizam apenas as expressões que dependem delas. Os componentes são funções simples que executam uma vez para configurar a visualização, enquanto signals, valores derivados e effects cuidam do restante.
A biblioteca inclui primitivas integradas para estado global por meio de Context e Stores, além de Resources, Suspense e renderização concorrente para carregar dados do servidor. Também oferece renderização no servidor com streaming e hydration progressiva, além de Error Boundaries e Portals. É possível criar renderizadores personalizados, permitindo que Solid seja usado em ambientes além do navegador.
Solid é baseado em JSX e TypeScript e se integra ao Vite. Foi projetado para acesso direto ao DOM, permitindo usar bibliotecas JavaScript nativas existentes, como D3, em conjunto com ele. O suporte a navegadores abrange os navegadores modernos para desktop e dispositivos móveis lançados nos últimos dois anos.
Recursos principais
- 01Compila templates JSX em nós reais do DOM, com atualizações granulares
- 02Rastreamento automático de dependências por meio de signals reativos e valores derivados
- 03Context e Stores integrados para gerenciar o estado global
- 04Resources, Suspense e renderização concorrente para dados assíncronos
- 05Renderização no servidor com streaming e hydration progressiva
- 06Oferece suporte a elementos personalizados e renderizadores personalizados
Casos de uso
- Criar aplicações de página única renderizadas no cliente com reatividade granular
- Desenvolver aplicações web renderizadas no servidor que precisam de streaming e hydration progressiva
- Criar componentes web reutilizáveis ou elementos personalizados
- Integrar bibliotecas JavaScript nativas existentes, como D3, com acesso direto ao DOM
Início rápido
- 1
Criar a estrutura inicial de um app JavaScript com degit
npx degit solidjs/templates/js my-app - 2
Entrar na pasta do projeto
cd my-app - 3
Instalar as dependências
npm i - 4
Iniciar o servidor de desenvolvimento
npm run dev
Tópicos
Perguntas frequentes
- O que é solid?
- Uma biblioteca declarativa de UI em JavaScript que compila JSX em atualizações diretas do DOM com reatividade granular, sem Virtual DOM. Solid é uma biblioteca JavaScript para criar interfaces de usuário. Em vez de usar um Virtual DOM, seus templates JSX são compilados em nós reais do DOM, e as mudanças de estado atualizam apenas as expressões que dependem delas. Os componentes são funções simples que executam uma vez para configurar a visualização, enquanto signals, valores derivados e effects cuidam do restante.
- solid é gratuito? Qual é a licença?
- solid é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- solid ainda é mantido?
- Manutenção ativa. O último commit de solid foi em 24 de out. de 2026.
- Para que posso usar solid?
- Criar aplicações de página única renderizadas no cliente com reatividade granular Desenvolver aplicações web renderizadas no servidor que precisam de streaming e hydration progressiva Criar componentes web reutilizáveis ou elementos personalizados Integrar bibliotecas JavaScript nativas existentes, como D3, com acesso direto ao DOM
- Como instalar solid?
- Criar a estrutura inicial de um app JavaScript com degit: npx degit solidjs/templates/js my-app Entrar na pasta do projeto: cd my-app Instalar as dependências: npm i Iniciar o servidor de desenvolvimento: npm run dev
- Onde consigo solid?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/solidjs/solid
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Omi é um framework de Web Components com JSX, reatividade baseada em signals, roteador e suporte a Tailwind, voltado à criação de elementos customizados reutilizáveis.
Biblioteca JavaScript para criar interfaces interativas com componentes compostos, na web, no servidor e em plataformas nativas.
Um framework JavaScript enxuto e robusto para adicionar comportamento reativo diretamente à sua marcação HTML.
Nuxt é um framework open source para criar aplicações e sites web full-stack prontos para produção com Vue.js.
Uma biblioteca JavaScript extremamente rápida, no estilo React, para criar interfaces de alto desempenho no cliente e no servidor.