Frontend / tooling
Vite 8 и Rolldown: Rust приходит во frontend tooling
Vite 8 заменил связку esbuild плюс Rollup единым Rust-based bundler. Это архитектурная перестройка, а не просто ещё одна цифра в package.json.
Зачем понадобился единый bundler
Раньше Vite использовал esbuild для быстрых преобразований в development и Rollup для production bundle. Практично, но два pipeline означали различия в обработке модулей, отдельные настройки и слой совместимости.
Rolldown создавался как быстрый bundler с совместимостью с Rollup API. В Vite 8 он отвечает и за dependency optimization, и за production build. Команда Vite заявляет ускорение относительно Rollup до 10–30 раз, хотя реальный выигрыш зависит от размера и структуры проекта.
Что получает проект
Главный выигрыш — не только время CI. Одинаковая основа development и production уменьшает класс ошибок «локально работает, в build ломается». Появляется пространство для persistent caching, более гибкого chunk splitting и Module Federation.
Большинство Vite/Rollup plugins должны продолжить работать благодаря совместимости API. Но плагины, которые используют внутренности Rollup или esbuild-specific options, требуют внимания.
Миграция без героизма
- Обновить Node до поддерживаемой версии.
- Зафиксировать текущие build-метрики и bundle composition.
- Обновить Vite в отдельной ветке и прочитать migration guide.
- Проверить custom plugins и переименованные esbuild-настройки.
- Сравнить unit, e2e, SSR и production preview.
В Vite 8 изменился default browser target: он соответствует Baseline Widely Available на начало 2026 года. Если продукт поддерживает старые браузеры, target нужно задать явно.
Стоит ли обновляться сразу
Новому проекту разумно начинать с Vite 8. Для стабильного продукта решение зависит от плагинов и стоимости CI. Чем ближе конфигурация к стандартной, тем проще миграция и заметнее преимущество.
Не стоит продавать обновление как магию Rust. Пользователь почувствует только то, что измерено: быстрее старт dev server, короче build или стабильнее pipeline. Остальное — хороший внутренний фундамент, но не продуктовая ценность само по себе.