- Rolldown é um bundler de nova geração desenvolvido em Rust e está previsto para se tornar o bundler padrão do Vite; no momento, já pode ser testado antecipadamente com o pacote
rolldown-vite
- Está sendo desenvolvido com o objetivo de ser totalmente compatível com o Vite atual e já comprovou resultados em uso real, como melhoria de 3 a 16 vezes na velocidade de build e até 100 vezes menos uso de memória em projetos de grande porte
- Com a remoção da dependência de esbuild e o uso do Oxc (conjunto de ferramentas JS de alto desempenho), torna possíveis transpilações e otimizações mais rápidas e consistentes
- O foco está em garantir compatibilidade com o Vite e com os principais plugins e frameworks; para alguns casos de uso avançados, recomenda-se consultar o guia de migração
- A integração ao código principal do Vite será feita em etapas, com um plano de transição gradual baseado em feedback da comunidade e experiência de uso real
Anúncio do Rolldown-Vite
Visão geral e efeitos da adoção
- Rolldown é um bundler moderno implementado em Rust, um motor de nova geração para substituir o bundler JS/TS atual do Vite
- Em projetos Vite existentes, é possível trocar facilmente o pacote
vite por rolldown-vite
- Em casos reais de adoção em empresas, já demonstrou excelente desempenho, como redução de 3 a 16 vezes no tempo de build e de 4 a 100 vezes no uso de memória
Principais tecnologias e migração
- Oxc: inclui uma toolchain JS/TS de alto desempenho com parser, transpiler, resolver e minifier integrados (com formatter previsto para o futuro)
- Mantém a mesma API e experiência de uso do Vite atual, embora sejam necessárias configurações de alias ou override dependendo do gerenciador de pacotes
esbuild deixa de ser obrigatório; todas as transformações e otimizações internas passam a ser feitas pelo Oxc (parte do esbuild ainda pode ser usada opcionalmente para compatibilidade com plugins)
Resultados em uso real
- GitLab: tempo de build de 2,5 minutos → 40 segundos, com redução de 100 vezes no uso de memória
- Excalidraw: 22,9 segundos → 1,4 segundo (16 vezes mais rápido)
- PLAID Inc.: 1 minuto e 20 segundos → 5 segundos (16 vezes mais rápido)
- Appwrite: 12 minutos → 3 minutos (memória reduzida em 4 vezes)
- Particl: 1 minuto → 6 segundos (melhoria de mais de 10 vezes, 29 vezes em relação ao Next.js)
- O build deste blog real (VitePress + Rolldown-Vite) também levou 1,8 segundo na Netlify
Compatibilidade e suporte a plugins
- A maioria dos principais frameworks e plugins passou nos testes da CI do ecossistema Vite
- Em alguns frameworks específicos e casos avançados, ainda podem ocorrer problemas de compatibilidade → recomenda-se consultar o guia de migração
- Autores de plugins já podem testar compatibilidade e otimização imediatamente no ambiente Rolldown-Vite
Roteiro de integração em etapas
- Etapa 1 (atual): pacote separado (
rolldown-vite) para testes iniciais e coleta de feedback
- Etapa 2: merge no código principal do Vite, oferta do modo full-bundle do servidor de desenvolvimento como opt-in, e descontinuação prevista do pacote
rolldown-vite
- Etapa 3: o modo full-bundle passa a ser o padrão do Vite
- Cada etapa deve levar alguns meses, com avanço gradual baseado em uso real e feedback da comunidade
Planos futuros e como participar
- Com a adoção do modo full-bundle no servidor de desenvolvimento, a expectativa é maximizar a velocidade e a estabilidade do desenvolvimento em projetos de grande porte
- A parte interna central do Vite também será gradualmente reescrita em Rust (reduzindo overhead de comunicação e maximizando o desempenho)
- Recomenda-se relatar bugs, problemas de compatibilidade e feedback de desempenho no repositório
rolldown-vite
- Discussões em tempo real podem ser feitas no Discord do Rolldown
Ainda não há comentários.