Svelte
| Svelte | |
|---|---|
![]() | |
| Autor | Rich Harris |
| Desenvolvedores | Mantenedores do Svelte e vários contribuidores. Incluindo Rich Harris, Conduitry, Tan Li Hau, Ben McCann e Simon Holthausen |
| Lançamento inicial | 26 de novembro de 2016 (9 anos) |
| Lançamento estável | 5.38.3[1] |
| Repositório | sveltejs/svelte no GitHub |
| Plataforma | Web |
| Tipo | Framework para aplicações web |
| Licença | Licença MIT |
| Website | svelte |
Svelte é um framework de software front-end baseado em componentes, livre e de código aberto, [2] e uma linguagem [3] criada por Rich Harris e mantida pela equipe do Svelte.[4]
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.[5] O código também é processado pelo compilador, que insere chamadas para atualizar dados automaticamente[2] e renderizar novamente os elementos da interface quando os dados dos quais eles dependem forem modificados.[6] Isso evita ainda problemas associados às camadas intermediárias de runtime (do inglês, "tempo de execução"), como o DOM virtual,[7] 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.[5][6][4][8][2][7]
O compilador por si só é escrito em JavaScript,[9][8] possui licença MIT e seu código-fonte está disponível no GitHub.[8] Entre as bibliotecas front-end comparáveis, o Svelte apresenta um dos menores tamanhos de bundle, com apenas 2 KB.[10]
História
Antecessor do Svelte, o Ractive.js foi criado por Rich Harris em 2013.[11]
A versão 1 do Svelte, desenvolvida em JavaScript, foi lançada em 29 de novembro de 2016.[carece de fontes] 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.[carece de fontes]
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.[carece de fontes]
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. [2]
O metaframework SvelteKit foi anunciado em outubro de 2020 e entrou em fase beta em março de 2021.[12] O SvelteKit 1.0 foi lançado em dezembro de 2022 após dois anos de desenvolvimento.[13]
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,[14] 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.[9] 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.[15][16]
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.[17] 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.[18] 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.[19] 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.[carece de fontes]
Também durante o Svelte Summit Fall 2024, o mantenedor Ben McCann anunciou o Svelte CLI, disponibilizado no npm sob o pacote "sv".[20]
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.[21] A partir de agosto de 2025, esse recurso passou a estar disponível por meio de uma opção experimental do compilador,[22] coincidindo com o lançamento da versão experimental das funções remotas, recurso de RPC introduzido no SvelteKit.[23]
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.[carece de fontes] Rich Harris e Simon Holthausen se juntaram à Vercel para trabalhar em tempo integral no Svelte em 2022,[24] e Dominic Gannaway entrou para a empresa em 2023, vindo da equipe principal do React, também para trabalhar integralmente no Svelte.[25]
Projetos associados
| SvelteKit | |
|---|---|
| Lançamento inicial | 14 de dezembro de 2022 (3 anos) |
| Lançamento estável | |
| Repositório | sveltejs/kit no GitHub |
| Plataforma | Web |
| Tipo | Metaframework |
| Licença | Licença MIT |
| Website | svelte |
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.[28]
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.[29]
Além disso, vários projetos externos, como o Storybook, também oferecem suas próprias integrações com o Svelte e o SvelteKit.
Referências
- ↑ «svelte@5.38.3 - Github». 23 agosto 2025
- ↑ a b c d Harris, Rich (22 de abril de 2019). «Svelte 3: Rethinking reactivity». svelte.dev (em inglês). Consultado em 7 de agosto de 2021
- ↑ Harris, Rich (26 de novembro de 2018). «The truth about Svelte». GitHub Gist (em inglês). Consultado em 21 de dezembro de 2022
- ↑ a b Krill, Paul (December 2, 2016). «Slim, speedy Svelte framework puts JavaScript on a diet». InfoWorld Verifique data em:
|data=(ajuda) - ↑ a b «React vs. Svelte, the JavaScript build-time framework». react-etc.net
- ↑ a b «Svelte 3 Front-End Framework Moves Reactivity into the JavaScript Language, Q&A with Rich Harris». InfoQ
- ↑ a b Harris, Rich (27 de dezembro de 2018). «Virtual DOM is pure overhead». svelte.dev (em inglês)
- ↑ a b c «GitHub - sveltejs/svelte: Cybernetically enhanced web apps». January 11, 2020 – via GitHub Verifique data em:
|data=(ajuda) - ↑ a b «TS to JSDoc Conversion #8569». GitHub.com
- ↑ Frontendeng.dev (1 de agosto de 2023). «Svelte vs React: Which framework is better?». frontendeng.dev (em inglês)
- ↑ Świstak, Tomasz (19 de novembro de 2020). «About the Svelte JavaScript framework». Blog. ValueLogic (em inglês). Consultado em 10 de junho de 2021. Cópia arquivada em 27 de março de 2022
- ↑ Harris, Rich (23 de março de 2021). «SvelteKit is in public beta». svelte.dev (em inglês). Consultado em 3 de agosto de 2021
- ↑ «Accouncing SvelteKit 1.0». 14 de dezembro de 2022. Consultado em 16 de dezembro de 2022
- ↑ team, The Svelte (22 de junho de 2023). «Announcing Svelte 4». svelte.dev (em inglês). Consultado em 8 de agosto de 2023
- ↑ «TS to JSDoc Conversion». Hacker News (news.ycombinator.com). 10 de maio de 2023
- ↑ «Lordy, I did not expect an internal refactoring PR to end up #1 on Hacker News. ...». Hacker News (news.ycombinator.com). 10 de maio de 2023
- ↑ «Svelte 5 is alive». svelte.dev. 22 October 2024 Verifique data em:
|data=(ajuda) - ↑ «Introducing runes». svelte.dev. 20 September 2023 Verifique data em:
|data=(ajuda) - ↑ «{#snippet ...}». Docs. svelte.dev
- ↑ McCann, Ben (24 de outubro de 2024). «Introducing the new Svelte CLI». svelte.dev (em inglês). Consultado em 20 de dezembro de 2024
- ↑ Harris, Rich (28 de abril de 2025). «Asynchronous Svelte · sveltejs/svelte · Discussion #15845»
- ↑ «await • Docs • Svelte». Consultado em 13 de agosto de 2025
- ↑ Holthausen, Simon (17 de junho de 2025). «Remote Functions · sveltejs/kit · Discussion #13897»
- ↑ Harris, Rich (Nov 11, 2021). «today is a big day for @sveltejs: i've joined @vercel to work on it full time!». Twitter (em inglês). Consultado em 4 de setembro de 2022
- ↑ «trueadm/status/1640761270566633472». X (formerly Twitter) (em inglês). Consultado em 30 de setembro de 2023
- ↑ «@sveltejs/kitTypeScript icon, indicating that this package has built-in type declarations1.15.5». Consultado em 26 novembro 2024
- ↑ «@sveltejs/kit@1.15.5». Consultado em 26 novembro 2024
- ↑ Harris, Rich (December 31, 2017). «Sapper: Towards the ideal web app framework». svelte.dev (em inglês). Consultado em 29 de novembro de 2022 Verifique data em:
|data=(ajuda) - ↑ «Svelte». GitHub (em inglês). Consultado em 3 de agosto de 2021
