// stack.lumi
Frontend

Svelte

Frontend compilado, leve e altamente responsivo.

// o que é

Svelte compila componentes para JavaScript eficiente, reduzindo overhead no browser. No contexto da Lumi Data, e interessante para interfaces leves, experiencias interativas e produtos que valorizam performance.

Svelte inverte o modelo de frameworks baseados em runtime: em vez de distribuir uma biblioteca de reconciliação que executa no browser, o compilador do Svelte transforma componentes em JavaScript vanilla otimizado em tempo de build, eliminando o custo de runtime de parsing e execução do virtual DOM. Harris (2019), na talk "Rethinking Reactivity" que acompanhou o lançamento do Svelte 3, argumenta que reatividade é um problema do compilador, não do runtime — labels de reatividade ($:) e declarações de variáveis reativas ($store) são sintaxe compilada para event listeners e atualizações pontuais de DOM, não abstrações de runtime. Em termos de Core Web Vitals (Google, 2020), a ausência de runtime significa bundles tipicamente 5-10x menores do que equivalentes React/Vue, o que impacta diretamente o LCP em conexões lentas e dispositivos de baixo custo. SvelteKit, o meta-framework oficial, implementa os mesmos padrões de SSR, SSG e file-based routing que Next.js e Nuxt, mas com o benefício adicional de zero runtime overhead no cliente.

Como a Lumi enxerga:A Lumi avalia Svelte quando ele traz vantagem real ao produto e entrega com padroes de design, testes e deploy.
// na prática

Como empresas usam Svelte

01

Produto com usuários em dispositivos de entrada (mercado popular)

Svelte é escolhido explicitamente pelo tamanho de bundle: uma tela de catálogo de produtos compilada com Svelte entrega em torno de 10 KB de JavaScript versus 150 KB+ com React + React DOM. Para usuários em redes 3G com smartphones de 2 GB de RAM, essa diferença é a distinção entre uma experiência usável e uma inutilizável.

02

Componente interativo embarcado em site de terceiro ou CMS

Svelte é usado para criar widgets isolados — calculadoras, formulários multi-etapa, configuradores de produto — que são embutidos via script tag em sites WordPress, Webflow ou plataformas de e-commerce. O output compilado não polui o namespace global e não conflita com outros frameworks já presentes na página.

03

Data visualization interativa em dashboard ou editorial

Svelte tem integração natural com D3.js porque ambos manipulam o DOM de forma imperativa e reativa sem camadas de abstração intermediárias. Times de dados constroem gráficos customizados altamente performáticos que atualizam com novos dados sem rerender componentes desnecessários.

// decisão técnica

Quando usar — e quando não usar

Use quando
  • Performance de carregamento é o critério mais crítico: landing pages, e-commerce, produtos para usuários em redes lentas ou dispositivos de baixo custo
  • O componente será embutido como widget em uma página de terceiros onde importar todo o runtime React seria desrespeitoso com o usuário da página hospedeira
  • A equipe prioriza legibilidade e simplicidade de código: a sintaxe Svelte elimina boilerplate de useState, useEffect e gerenciamento de estado manual para casos comuns
  • Visualizações de dados customizadas com D3.js onde a manipulação direta do DOM do Svelte complementa naturalmente o modelo imperativo do D3
  • Protótipos e provas de conceito onde o time quer validar UX rapidamente sem configurar todo o toolchain de um framework mais pesado
Evite quando
  • A aplicação é um produto de escala com design system maduro e dezenas de desenvolvedores — o ecossistema de componentes headless, ferramentas de teste e bibliotecas de UI para Svelte ainda é significativamente menor que o React
  • O time precisa de um mercado de talentos amplo: Svelte tem comunidade menor e contratação de desenvolvedores experientes é mais difícil do que React no Brasil
  • O produto precisa de SSR complexo com autenticação, middleware e integrações múltiplas — SvelteKit é capaz, mas tem menos exemplos de produção, menos bibliotecas de integração e comunidade menor que Next.js
  • O cliente vai fazer manutenção interna do código após a entrega e não tem desenvolvedor Svelte — a dívida técnica de onboarding pode superar os ganhos de performance
// visão lumi

Svelte é nossa escolha quando performance de carregamento não é uma métrica desejável — é um requisito inegociável. Para landing pages de conversão, componentes embarcados e qualquer produto onde o usuário está em uma rede lenta ou dispositivo modesto, o overhead de runtime do React não se justifica e Svelte entrega resultados melhores com código mais simples. Não usamos Svelte como stack padrão de produtos de escala: o ecossistema menor tem custo real de produtividade e contratação que não vale a pena pagar quando o produto vai crescer para múltiplos times. A escolha é sempre pragmática — e quando o requisito é bundle mínimo, Svelte ganha sem contest.

Lumi escolhe quando

  • Landing pages e páginas de conversão onde LCP abaixo de 2,5 s é requisito de negócio direto e não apenas aspiração técnica
  • Widgets interativos embarcados em plataformas de terceiros (WordPress, Webflow, e-commerce) onde o tamanho do bundle impacta a performance da página hospedeira
  • Visualizações de dados customizadas com D3.js em dashboards ou peças editoriais interativas
  • Protótipos de alta fidelidade que precisam ser validados com usuários rapidamente sem overhead de setup

Lumi não recomenda quando

  • Produtos de escala com múltiplos times onde o ecossistema menor do Svelte aumenta o custo de contratação, onboarding e manutenção a longo prazo
  • Sistemas admin e backoffice onde a produtividade do ecossistema React (tabelas, formulários, dashboards prontos) supera o benefício de bundle menor
// aplicações

Onde essa tecnologia gera valor

01

Apps web leves

A Lumi conecta essa aplicação ao objetivo de negócio, definindo arquitetura, dados, segurança e indicadores de sucesso antes da implementação.

02

Componentes interativos

A Lumi conecta essa aplicação ao objetivo de negócio, definindo arquitetura, dados, segurança e indicadores de sucesso antes da implementação.

03

Prototipos de produto

A Lumi conecta essa aplicação ao objetivo de negócio, definindo arquitetura, dados, segurança e indicadores de sucesso antes da implementação.

04

Experiencias com alta responsividade

A Lumi conecta essa aplicação ao objetivo de negócio, definindo arquitetura, dados, segurança e indicadores de sucesso antes da implementação.

// fundamentos

Referências acadêmicas e técnicas

Harris, R. (2019). Rethinking Reactivity [Conference talk]. You Gotta Love Frontend, Tel Aviv.

Talk de lançamento do Svelte 3 onde Rich Harris argumenta que reatividade é um problema de compilador, não de runtime, fundamentando a abordagem sem virtual DOM do framework.

Google. (2020). Web Vitals: Essential metrics for a healthy site. web.dev/vitals.

Define LCP e INP como métricas onde o tamanho de bundle tem impacto direto, criando o critério de performance que justifica a escolha de Svelte sobre frameworks com runtime mais pesado.

Svelte Team. (2023). Svelte Documentation. svelte.dev/docs.

Documentação oficial incluindo o modelo de compilação, reatividade declarativa, transitions e a integração com SvelteKit para SSR e SSG.

Grigorik, I. (2013). High Performance Browser Networking. O'Reilly Media.

Fundamentos de como tamanho de payload JavaScript afeta Time to Interactive em redes lentas, justificando a escolha de Svelte para usuários em 3G ou dispositivos de baixo custo.

Murray, S. (2013). Interactive Data Visualization for the Web: An Introduction to Designing with D3. O'Reilly Media.

Referência de D3.js que documenta o modelo imperativo de manipulação de DOM, complementar ao modelo de Svelte que também manipula DOM de forma eficiente sem camada de abstração.

// tecnologias relacionadas

Frontend

// próximo passo

Quer saber se esse stack faz sentido para você?

A Lumi avalia contexto, dados, equipe, custo e maturidade para recomendar a tecnologia certa e entregar com responsabilidade.