Svelte é um framework de software front-end baseado em componentes, livre e de código aberto, e uma linguagem criada por Rich Harris e mantida pela equipe do Svelte.
Diferente de bibliotecas JavaScript monolíticas importadas por aplicações, o Svelte compila templates HTML em código especializado que manipula o DOM diretamente, o que pode reduzir o tamanho dos arquivos transferidos e melhorar o desempenho no cliente. O código também é processado pelo compilador, que insere chamadas para atualizar dados automaticamente e renderizar novamente os elementos da interface quando os dados dos quais eles dependem forem modificados. Isso evita ainda problemas associados às camadas intermediárias de runtime (do inglês, "tempo de execução"), como o DOM virtual, ao contrário dos frameworks tradicionais (como React e Vue) que executam grande parte do processamento em runtime, ou seja, diretamente no navegador durante a execução da aplicação.
O compilador por si só é escrito em JavaScript, possui licença MIT e seu código-fonte está disponível no GitHub. Entre as bibliotecas front-end comparáveis, o Svelte apresenta um dos menores tamanhos de bundle, com apenas 2 KB.
História
Antecessor do Svelte, o Ractive.js foi criado por Rich Harris em 2013.
A versão 1 do Svelte, desenvolvida em JavaScript, foi lançada em 29 de novembro de 2016. O nome "Svelte" (em tradução livre: "esbelto" ou "esguio") foi escolhido por Rich e seus colegas de trabalho da época no jornal britânico The Guardian.
A versão 2 do Svelte foi lançada em 19 de abril de 2018, se propondo a corrigir o que os mantenedores consideravam como falhas da versão inicial, assim substituindo chaves duplas por chaves simples, por exemplo.
A versão 3 do Svelte, desenvolvida em TypeScript, foi lançada em 21 de abril de 2019, trazendo uma nova forma de se pensar em reatividade ao usar um compilador para gerar um código sólido e entregar uma experiência de usuário superior.
O metaframework SvelteKit foi anunciado em outubro de 2020 e entrou em fase beta em março de 2021. O SvelteKit 1.0 foi lançado em dezembro de 2022 após dois anos de desenvolvimento.
A versão 4 do Svelte foi lançada em 22 de junho de 2023. Considerada uma versão de manutenção, menor e mais rápida que a versão 3, parte desse lançamento apresenta a migração do código interno, anteriormente escrito em TypeScript, de volta para JavaScript, incluindo agora anotações de tipagem através do JSDoc. Essa mudança gerou confusão entre parte da comunidade de desenvolvedores, acarretando no criador do Svelte, Rich Harris, vindo a público explicar o caso e as mudanças na prática.
A versão 5 do Svelte foi lançada em 19 de outubro de 2024 durante o evento Svelte Summit Fall 2024, com Rich Harris realizando o lançamento ao vivo junto de outros mantenedores do projeto. O Svelte 5 apresenta uma reescrita completa do Svelte, alterando conceitos centrais como reatividade e reutilização de código. Sua principal novidade, as runes ("runas" em inglês), reformularam a forma como estados reativos são declarados e utilizados. Runes são macros que se comportam como funções e servem para declarar estados reativos ou trechos de código que dependem desses estados. O compilador utiliza essas runes para identificar valores que podem ser alterados e que são referenciados por outros estados ou pelo DOM. O Svelte 5 também introduziu os Snippets, trechos de código reutilizáveis, definidos uma única vez e que podem ser reutilizados em qualquer parte de um componente. Inicialmente, o Svelte 5 gerou controversas devido à introdução de mudanças significativas e descontinuações causadas principalmente pela adoção das runes. Contudo, a maior parte dessas críticas diminuiu após o anúncio inicial e o aprimoramento contínuo da nova versão.
Também durante o Svelte Summit Fall 2024, o mantenedor Ben McCann anunciou o Svelte CLI, disponibilizado no npm sob o pacote "sv".
o início de 2025, a equipe do Svelte anunciou o Asynchronous Svelte ("Svelte Assíncrono" em inglês), um conjunto experimental de recursos focado em reatividade assíncrona no Svelte, utilizando expressões expressões async/await. A partir de agosto de 2025, esse recurso passou a estar disponível por meio de uma opção experimental do compilador, coincidindo com o lançamento da versão experimental das funções remotas, recurso de RPC introduzido no SvelteKit.
Entre os principais colaboradores iniciais do projeto estão Conduitry, que se juntou ao time no lançamento da primeira versão do Svelte, Tan Li Hau, que ingressou em 2019, e Ben McCann, em 2020. Rich Harris e Simon Holthausen se juntaram à Vercel para trabalhar em tempo integral no Svelte em 2022, e Dominic Gannaway entrou para a empresa em 2023, vindo da equipe principal do React, também para trabalhar integralmente no Svelte.
Projetos associados
Os mantenedores do projeto criaram ainda o SvelteKit como a forma oficial de desenvolver projetos com Svelte. Ele é um framework no estilo do Next.js que reduz drasticamente a quantidade de código enviada ao navegador. Antes do SvelteKit, os mantenedores haviam desenvolvido o Sapper, que serviu como seu antecessor.
A equipe do Svelte também mantém diversas integrações oficiais sob a organização do Svelte, incluindo suporte para Vite, Rollup, Webpack, TypeScript, VS Code, Chrome DevTools, ESLint e Prettier.
Além disso, vários projetos externos, como o Storybook, também oferecem suas próprias integrações com o Svelte e o SvelteKit.
Categoria:Bibliotecas JavaScript