Как Vite+ пытается собрать разрозненный фронтенд-стек в один кулак

03 Jun, 2026

Вы когда-нибудь считали, сколько конфигурационных файлов лежит в корне вашего среднего проекта? .eslintrc, .prettierrc, vitest.config.ts, tsconfig.json, package.json, а еще настройки для lint-staged или husky. Каждый раз, когда выходит обновление одного инструмента, приходится проверять совместимость с остальными. Команда VoidZero, в которую входят создатели Vite и Oxc, решила, что с нас хватит, и выкатила Vite+.

Это не просто очередная надстройка. По сути, перед нами попытка создать единую точку входа для всей веб-разработки, где управление версиями Node.js, установка пакетов, линтинг, тесты и сборка живут внутри одного бинарника.

Что под капотом

Если вы следите за новостями фронтенда, то знаете про проект VoidZero. Ребята пишут невероятно быстрые инструменты на Rust. Vite+ объединяет их наработки в общую цепочку. Внутри сидят:

  • Vite и Vitest для разработки и тестов.
  • Oxlint и Oxfmt — сверхбыстрые замена ESLint и Prettier.
  • Rolldown и tsdown — новые сборщики, которые должны прийти на смену Rollup и esbuild.

Идея в том, чтобы вы установили одну зависимость и забыли про зоопарк devDependencies.

Одна команда для всего

Вместо того чтобы прыгать между npm, nvm и npx, вы используете CLI-утилиту vp. Она берет на себя вообще всё.

Реклама

Например, управление окружением. Команда vp env позволяет переключать версии Node.js прямо для конкретного проекта. Больше не нужно вспоминать, установлен ли у вас fnm или nvm.

Установка зависимостей тоже упростилась. vp install сама поймет, какой менеджер пакетов вы используете (pnpm, npm или yarn), и вызовет нужные команды. Это удобно, когда вы постоянно переключаетесь между старыми и новыми репозиториями с разной структурой.

Единый конфиг вместо десятка файлов

Самая приятная часть — это vite.config.ts. Теперь это действительно центральный пульт управления. Посмотрите, как выглядит настройка линтера, тестов и кастомных задач в одном месте:

import { defineConfig } from 'vite-plus';

export default defineConfig({
  // Обычные плагины Vite
  plugins: [],

  // Настройки тестов прямо здесь
  test: {
    include: ['src/**/*.test.ts'],
  },

  // Конфигурируем Oxlint без создания .oxlintrc
  lint: {
    ignorePatterns: ['dist/**'],
  },

  // Настройки форматирования кода
  fmt: {
    semi: true,
    singleQuote: true,
  },

  // Задачи для монорепозитория или скрипты сборки
  run: {
    tasks: {
      'build:icons': {
        command: 'node scripts/generate-icons.js',
      },
    },
  },
});

Такой подход избавляет от ментальной нагрузки. Вам не нужно гуглить формат конфига для каждого отдельного инструмента — всё типизировано и находится под рукой.

Быстрый старт и миграция

Если вы боитесь, что переход на новый инструмент превратится в неделю боли, разработчики предусмотрели vp migrate. Эта команда сканирует ваш проект, находит старые конфиги вроде .oxlintrc или настройки lint-staged и переносит их в vite.config.ts.

Для новых проектов всё еще проще:

vp create

Эта команда развернет готовую структуру, где всё уже настроено и готово к работе.

Практическая польза

Кому это нужно прямо сейчас? В первую очередь тем, кто устал от медленных проверок в CI и огромных node_modules. Поскольку Vite+ опирается на инструменты, написанные на Rust (Oxc), команды vp check (линтинг + типы) и vp fmt отрабатывают в разы быстрее привычных JS-аналогов.

Для мейнтейнеров библиотек есть vp pack. Она помогает собирать пакеты для публикации в npm или даже упаковывать приложения в исполняемые бинарники.

Интересно реализована работа с монорепозиториями. Команда vp run умеет кэшировать результаты выполнения задач и понимает зависимости между пакетами. Это делает её легкой альтернативой Turborepo или Nx для тех, кому не нужны их избыточные функции.

Стоит ли пробовать

Vite+ выглядит как логичный шаг в эволюции фронтенд-инструментария. Мы долго шли к тому, чтобы собирать стек из кусочков, и теперь возвращаемся к монолитным, но быстрым и согласованным решениям.

Проект всё еще активно развивается, и некоторые части (например, Rolldown) могут вести себя нестабильно в сложных конфигурациях. Однако для пет-проектов или новых сервисов это отличный способ сократить время на настройку окружения. Если вам нравится скорость Vite и вы хотите видеть такую же скорость во всём остальном цикле разработки, vp определенно заслуживает места в вашем терминале.