Установка промпта

I want to use Vite+ in my project. Vite+ is the unified toolchain for the web behind the `vp` CLI — one tool combining Vite, Rolldown, Vitest, tsdown, Oxlint, Oxfmt, and Vite Task, plus runtime and package-manager management.

First, read https://viteplus.dev/llms-full.txt and https://viteplus.dev/guide to learn Vite+'s commands and configuration. Inspect the worktree and preserve unrelated changes. Determine whether I want a new project or want to migrate or upgrade an existing project. Follow only the matching flow below.

For a new project:

Read https://viteplus.dev/guide/create and choose the template, target directory, package manager, and intended Vite+ release or preview for my project. Use the target CLI's `help create` output to select supported options. Scaffold with `vp create`; do not overwrite existing project files.

A global installation is optional. To install the global `vp` CLI when it is not already available:
- macOS / Linux: curl -fsSL https://vite.plus | bash
- Windows (PowerShell): irm https://vite.plus/ps1 | iex

Open a new terminal after installation. Follow https://viteplus.dev/guide/upgrade to select the target release or preview and check `vp toolchain --global` before scaffolding.

Without a global installation, use a supported Node.js runtime from the compatibility guide. For the 1.2.0 release, run `pnpm dlx --package=vite-plus@1.2.0 vp create` or `npx --package=vite-plus@1.2.0 vp create`. Replace 1.2.0 with the intended release version. For a preview, use the version from its PR and pass `--registry=https://registry-bridge.viteplus.dev` to pnpm or npx before the vp command.

Run `vp install`, `vp check`, and `vp test`, then `vp build` for applications or `vp pack` for libraries. Without a global CLI, install with the project's package manager and run the local CLI through it, such as `pnpm exec vp check` or `npm exec -- vp check`. Explain how to use `vp dev` for the dev server and `vp run <task>` for project scripts or tasks. Report the setup changes, validation results, and any remaining work. Do not commit or push unless I ask.

For an existing project, including one that already uses Vite+, follow these migration or upgrade instructions:

Migrate this project to Vite+ while preserving its application, test, and library build behavior.

Read these guides before making changes:

- https://viteplus.dev/guide/migrate
- https://viteplus.dev/guide/migrate-rules
- https://viteplus.dev/guide/vitest-v5
- https://vitest.dev/guide/migration/
- https://github.com/rolldown/tsdown/releases/tag/v0.23.0

Inspect the worktree and preserve unrelated changes. Identify the workspace root, package manager, scripts, configuration files, and tools in use. If the project already uses Vite+, follow the upgrade flow in the migration guide and keep the existing setup; do not use --full unless I request it.

For a project that does not use Vite+ yet, check the prerequisites for the tools it uses: Vite 7+ and Vitest 4+. Complete any required upstream upgrades and validate them before starting the Vite+ migration. Then keep those manifests, lockfile, and installed packages available so the migrator can identify the original Vitest version. Do not install vite-plus or upgrade Vitest to the target's bundled version before running migration.

Use the CLI from the target Vite+ 1.0 release or its preview build. Use a supported Node.js runtime from the compatibility guide. A global installation is optional:

- With a global vp installation, follow https://viteplus.dev/guide/upgrade to select the target release and check `vp toolchain --global`. Run `vp help` and `vp help migrate`, then `vp migrate --no-interactive` from the workspace root.
- Without a global installation, run the target CLI through the package manager from the workspace root. For the 1.2.0 release, use `pnpm dlx --package=vite-plus@1.2.0 vp migrate --no-interactive` or `npx --package=vite-plus@1.2.0 vp migrate --no-interactive`. First run the same command with `help migrate` instead of `migrate --no-interactive` to read its help. These commands fetch the target CLI without replacing the old project dependencies first.

Replace 1.2.0 with the intended release version. For a preview, use the version from its PR and pass `--registry=https://registry-bridge.viteplus.dev` to pnpm or npx before the vp command.

Do not run migration with an old project's node_modules/.bin/vp. Migrate monorepos from the workspace root so shared manifests, catalogs, overrides, and lockfiles remain consistent.

Resolve BLOCK findings and rerun migration. Review every REVIEW finding and manual-migration warning using the linked guidance, even if migration exits with success. Keep the generated Vitest v4 and tsdown <0.23 compatibility settings and comments for the first validation run.

Review the resulting changes against the migration rules:

- Confirm Vite and test imports use the supported vite-plus and vite-plus/test* entries. Keep type augmentations on their upstream module identities and the community WebDriverIO provider on @vitest/browser-webdriverio.
- Preserve dependencies, aliases, catalogs, and overrides configured by the migrator. On pnpm, keep the configured vite and vitest entries. Retain upstream packages when the migration rules require them.
- Move remaining tool-specific configuration into the appropriate blocks in vite.config.ts. Review manual follow-up for lint, formatting, packaging, and hooks without discarding project-specific behavior.
- Distinguish built-ins from tasks: `vp dev` and `vp test` run built-in tools; `vp run dev` and `vp run test` run the corresponding project scripts or tasks. The packageManager field selects the package manager used by `vp install`, `vp add`, and `vp remove`.

Run `vp install`, `vp check`, and `vp test`, plus configured browser, coverage, and benchmark suites. Run `vp build` for applications and `vp pack` for libraries, including both where the workspace contains both. Check library consumers against emitted imports and declarations. Without a global CLI, install with the project's package manager and invoke the updated local CLI through it, such as `pnpm exec vp check` or `npm exec -- vp check`. Fix failures without weakening assertions or dropping test coverage.

After establishing a passing baseline, try to remove the generated "Vitest v4 compatibility" settings with no code changes or small, localized fixes:

1. Use the migration diff and generated comments to identify additions in root, workspace, and inline project configs. Read each linked explanation and check the effective setting after removal, including inherited values. Preserve pre-existing user settings and settings whose origin is unclear.
2. Remove one added setting at a time and first run the affected projects and suites without code changes. If needed, make small, localized application, test, or setup fixes that preserve test intent, such as correcting a locator or adjusting mock setup in a few tests. Do not weaken assertions, accept snapshot changes without review, or reduce the test set. For fakeTimers.toNotFake, remove only the added Temporal entry and preserve other exclusions. Do not weaken coverage enforcement: retain glob-threshold perFile: true unless I approve aggregate checking, even if coverage passes.
3. Keep a removal only when the affected tests pass and still execute the same tests without new skips. Remove that setting's generated comment too. If removal requires widespread test edits or shared setup refactoring, keep compatibility for now and report the follow-up work. Restore the setting and its comment if validation still fails, cannot run, or leaves uncertainty about behavior. Undo only cleanup-specific trial edits; preserve completed migration fixes and unrelated work.
4. Run the full validation commands again with the accepted removals together. Report each candidate's config path, removed or retained status, code changes, commands and results, and the reason for retaining it. Distinguish a deferred rewrite from a setting you could not validate.

For projects that use vp pack, also review the generated "tsdown <0.23 compatibility" settings after a passing library build. Use the migration diff and linked comments to distinguish inserted settings from pre-existing user choices. Removing deps.resolveDepSubpath: true preserves external subpath imports as written; check that consumers can still resolve the emitted imports. Removing attw.profile: 'strict' adopts the esm-only profile, which skips node10 and CommonJS resolution checks. Keep strict if those checks are part of the package's intended support. Do not drop intended declaration checks merely to make a build pass. Remove one setting and its generated comment at a time, then run vp pack and the package's consumer checks. Restore the setting and comment if validation fails or the required consumer behavior is unclear. Report which settings remain and why.

Report the migration changes, validation results, retained compatibility settings, and unresolved findings. Do not commit or push unless I ask.
Логотип Vite+

Vite+ 1.0 уже доступен

Единый наборинструментов для веба

Управляйте средой выполнения, менеджером пакетов и фронтенд-стеком с помощью одного инструмента.

Бесплатный и с открытым исходным кодом под лицензией MIT.

Начало работы

Глобальная установка

Установите Vite+ один раз, откройте новую сессию терминала, затем выполните vp help.

Для CI используйте setup-vp .

macOS / Linux
curl -fsSL https://vite.plus | bash
Windows (PowerShell)
irm https://vite.plus/ps1 | iex
Управляет средой выполнения и менеджером пакетов

Автоматически использует node с подходящим менеджером пакетов для каждого проекта.

node
pnpmnpmyarnbun
Упрощает повседневную разработку

Один конфигурационный файл и единый последовательный поток команд для всего вашего стека.

vp envvp installvp devvp checkvp buildvp run
Для ваших любимых фреймворков

Поддерживает все фреймворки, построенные на Vite.

    reactvuesveltesolid

+ ещё 20

Проверенный стек для стандартизации

Vite+ построен на признанных отраслевых стандартах с открытым исходным кодом и поддерживается теми же экспертами, которые стоят за этими проектами.

Vite

232m+

Загрузок в неделю на npm

83.3k

Звёзд на GitHub

Vitest

142m+

Загрузок в неделю на npm

17.2k

Звёзд на GitHub

Oxc

29m+

Загрузок в неделю на npm

23.0k

Звёзд на GitHub

Сохраняйте скорость в масштабе

Благодаря низкоуровневым компонентам, написанным на Rust, Vite+ обеспечивает производительность корпоративного уровня: до 40× более быстрая сборка по сравнению с webpack, примерно от 50× до 100× более быстрый линтинг по сравнению с ESLint и до 30× более быстрое форматирование по сравнению с Prettier.

Сосредоточьтесь на релизах, а не на инструментах
  • Перестаньте тратить время на поддержку инструментов
  • Упростите переход разработчиков между командами
  • Стандартизируйте лучшие практики для людей и рабочих процессов с помощью ИИ
Безопасность цепочки поставок

Разработка Vite+ следует строгим практикам безопасности, и мы проверяем все его зависимости в рамках единой цепочки инструментов.

Vite+ проверяет все зависимости в соответствии со строгими практиками безопасности

Всё необходимое в одном инструменте

Vite+ объединяет весь ваш рабочий процесс веб-разработки в единый мощный интерфейс командной строки.

Vite+ dev и build

Молниеносно быстрые сборки

Моментально запускайте dev-серверы и создавайте рабочие сборки с экстремальной скоростью. Оставайтесь в потоке и держите CI быстрым.

  • Всегда мгновенная горячая замена модулей (HMR)
  • Сборка для продакшена в 40 раз быстрее, чем у webpack
  • Опциональный режим полной сборки в dev-режиме для больших приложений
  • Огромная экосистема плагинов
Vite
Vite
и
Rolldown
Rolldown
$ vp build
VITE+ building for production
✓ Transformed 128 modules
dist/index.html0.42 kB
dist/assets/index.css5.1 kB
dist/assets/index.js46.2 kB
✓ Built in 421ms
Vite+ check

Форматирование, линтинг и проверка типов за один проход

Поддерживайте единообразие в каждом репозитории одной командой на базе Oxlint, Oxfmt и tsgo.

  • Форматирование, совместимое с Prettier
  • Более 750 правил, совместимых с ESLint
  • Линтинг с учётом типов и быстрая проверка типов с помощью tsgo
  • vp check --fix автоматически исправляет, где это возможно
Oxc
Oxc / Oxlint
Oxc
Oxc / Oxfmt
$ vp check
pass: All 42 files are correctly formatted (88ms, 16 threads)
pass: Found no warnings, lint errors, or type errors in 42 files(184ms, 16 threads)
Vite+ test

Тестирование стало проще

Богатый функционалом тестовый раннер, который автоматически использует те же настройки resolve и transform, что и ваше приложение.

  • Jest-совместимый API
  • Изоляция тестов по умолчанию
  • Режим браузера: запуск юнит-тестов в реальных браузерах
  • Отчёты о покрытии, snapshot-тесты, type-тесты, визуальное регрессионное тестирование…
Vitest
Vitest
vp test terminal command
Vite+ run

Задача Vite для монорепозиториев и сценариев

Запускайте встроенные команды и сценарии package.json с автоматическим кэшированием и выполнением с учётом зависимостей.

  • Автоматическое отслеживание входных данных для кэшируемых задач
  • Выполнение с учётом зависимостей между пакетами рабочего пространства
  • Привычный запуск сценариев через vp run
Vite+ pack

Упаковка библиотек с соблюдением лучших практик

Упаковывайте TS и JS-библиотеки для npm или собирайте автономные бинарники приложений одной командой vp pack.

  • Генерация и сборка DTS
  • Автоматическая генерация точек экспорта пакета
  • Автономные исполняемые файлы приложений и режим только с преобразованием без сборки в бандл
Rolldown
Rolldown
/ tsdown
$ vp pack
ℹ entry: src/index.ts
ℹ tsconfig: tsconfig.json
ℹ Build start
ℹ dist/index.mjs4.8 kB
ℹ dist/index.d.mts1.2 kB
✔ Build complete in 128ms

Полный стек? Без проблем.

Vite+ может быть основой для веб-приложений любого типа — от одностраничных приложений (SPA) до полноценных мета-фреймворков.

Мета-фреймворки

Вы можете использовать мета-фреймворки, которые поставляются в виде плагинов Vite, вместе с Vite+

Мета-фреймворки
Независимость от платформы

Полноценная поддержка на Vercel, Netlify, Cloudflare и других платформах

Vercel
Netlify
Cloudflare
Render
Иконка Nitro
Развёртывайте где угодно в паре с Nitro
Развёртывание где угодно с помощью Nitro