平时写前端,项目里总要堆一堆工具:启动服务用vite、测试靠vitest、格式化、校验、库打包各一套脚本。 每个仓库配置不一样,新人上手麻烦,团队统一规范更是头疼。
现在 VoidZero 正式推出 Vite+ Beta,把整条开发链路整合到一起,不用手动拼凑工具链。

Vite+ 到底解决什么问题
痛点1:工具零散,命令记不过来
不用分别配置启动、格式化、校验、测试、打包脚本,统一用 vp 指令全覆盖
arduino
vp dev 启动热更新开发服务vp check 格式化+代码校验+TS类型检查一步到位vp test 运行单元测试vp build 生产环境打包vp pack 标准化类库打包vp run 带智能缓存执行项目脚本
痛点2:团队项目配置参差不齐
-
所有项目工具版本自动统一,杜绝本地正常、CI报错的环境差异
-
通用配置可跨项目复用,减少重复造轮子
-
新人拉取代码无需复杂初始化,开箱即可开发
-
本地开发、流水线共用同一套命令,线上线下行为完全一致
痛点3:不破坏原有Vite生态
现有全部 Vite插件完美兼容,底层依旧能使用你习惯的包管理器 Vite+仅做统一调度层,不会替换大家熟悉的开发工具
基础优势补充
MIT完全开源,无框架绑定,React/Vue/Svelte/原生JS全都适配,CLI工具、组件库、业务网页项目通用。
已经有大量项目在用
落地规模远超官方预期,1300+公开仓库 接入 vite-plus(不含私有项目、全局CLI安装量)。 下载量暴涨:2026年1月仅4600次下载,预测7月可达330万。
不少热门开源项目完成迁移:LLM平台Dify、Notion风编辑器BlockNote、Next兼容框架vinext、多端UI库Inkline、npm镜像工具npmx等。 npmx团队反馈:接入后本地开发、代码评审、CI构建速度都有明显提升。
距离1.0正式版还有这些规划
当前Beta版本稳定性可靠,但功能仍在持续完善,上线1.0前重点开发:
-
vp run 远程缓存
-
GitLab CI专用一键部署脚本 setup-vp
-
拓宽各类框架、Vite插件兼容范围
-
适配更多老旧项目迁移场景
-
上线官方Homebrew安装渠道
-
完善文档、优化报错诊断提示
官方会持续收集社区反馈,补齐兼容短板,打磨完成后发布 Vite+ 1.0 正式版。
快速上手试一下
一、全局安装 vp 命令
Windows(PowerShell 推荐)
arduino
irm https://vite.plus/ps1 | iex
macOS / Linux
arduino
curl -fsSL https://vite.plus | bash
小提示:如果打开cmd执行会报错,按下 Win+X 选择PowerShell再运行安装命令即可,终端提示无报错就是安装成功。
二、两种项目接入方式
新建空白项目
lua
vp create
现有Vite项目一键迁移
vp migrate
提醒:迁移前会展示全部改动,但大型复杂项目仍需少量手动调整,线上生产项目迁移前务必查看官方迁移指南。
三、统一配置文件 vite.config.ts
Vite+把所有工程化配置收拢到单文件,不用散落 vite、eslint、prettier、vitest 一堆配置文件。
最简基础模板
php
import { defineConfig } from'vite-plus';exportdefault defineConfig({server: {},build: {},preview: {},test: {},lint: {},fmt: {},run: {},pack: {},staged: {},});
给大家一份可直接复制的完整Vue+TS实战配置,包含代理、路径别名、自动导入、单元测试、代码格式化、提交校验全能力:
css
import { defineConfig, loadEnv } from'viteplus';import path from'path';import vue from'@vitejs/plugin-vue';import vueJsx from'@vitejs/plugin-vue-jsx';type Env = { VITE_API_BASE_URL: string; VITE_PORT: number; VITE_OPEN: boolean;};exportdefault defineConfig(({ mode, command }) => {const env = loadEnv<Env>(mode, process.cwd(), 'VITE_');const isProduction = command === 'build';return { root: process.cwd(), base: isProduction ? '/' : '/', // 开发服务 server: { port: env.VITE_PORT || 3000, open: env.VITE_OPEN || false, cors: true, host: '0.0.0.0', proxy: { '/api': { target: env.VITE_API_BASE_URL, changeOrigin: true, rewrite: (path) => path.replace(/^\/api/, ''), }, }, }, // 生产打包 build: { outDir: 'dist', assetsDir: 'assets', sourcemap: !isProduction, minify: isProduction ? 'esbuild' : false, rollupOptions: { output: { manualChunks: { vue: ['vue', 'vue-router', 'pinia'], ui: ['element-plus'], }, }, }, compress: { enabled: isProduction, format: 'gzip', threshold: 10240, }, }, // 路径别名 resolve: { alias: { '@': path.resolve(__dirname, 'src'), }, extensions: ['.vue', '.ts', '.tsx', '.js', '.jsx', '.json'], }, // 约定式路由 router: { dir: 'src/views', mode: 'history', exclude: ['**/components/**'], lazy: true, }, // API自动导入 imports: { vue: true, pinia: true, vueRouter: true, dts: 'src/auto-imports.d.ts', }, // 全局SCSS变量 css: { preprocessorOptions: { scss: { additionalData: `@import "@/styles/variables.scss";`, }, }, }, // 插件 plugins: [ vue(), vueJsx(), ], // Vitest单元测试 test: { framework: 'vitest', include: ['src/**/*.{test,spec}.{js,ts,vue}'], environment: 'jsdom', coverage: { enabled: mode === 'test', reporter: ['text', 'html', 'lcov'], }, setupFiles: ['src/test/setup.ts'], }, // 代码校验Oxlint lint: { include: ['src/**/*.{js,ts,vue,tsx,jsx}'], fix: true, config: { parser: 'vue-eslint-parser', parserOptions: { parser: '@typescript-eslint/parser' }, extends: ['eslint:recommended', 'plugin:vue/vue3-recommended', 'plugin:@typescript-eslint/recommended', 'prettier'], rules: { 'vue/script-setup-uses-vars': 'error', '@typescript-eslint/no-unused-vars': ['warn', { argsIgnorePattern: '^_' }], }, }, }, // 代码格式化Oxfmt fmt: { include: ['src/**/*.{js,ts,vue,tsx,jsx,json,scss,md}'], write: true, config: { printWidth: 120, tabWidth: 2, singleQuote: true, semi: true, trailingComma: 'es5', vueIndentScriptAndStyle: true, }, }, // 任务脚本调度 run: { scripts: { dev: { command: 'viteplus dev', env: 'development', args: ['--host', '0.0.0.0'] }, build: { command: 'viteplus build', env: 'production' }, test: { command: 'viteplus test', env: 'test', watch: true }, }, }, // 类库打包 pack: { type: 'app', }, // git提交前置校验 staged: { rules: { '*.{js,ts,vue}': ['viteplus lint', 'viteplus fmt'], '*.{scss,json,md}': ['viteplus fmt'], }, blockCommit: true, }, };});
Vite+ 一路走来的变化
早前官方放出 Vite+ Alpha 内测版,面向全球开发者征集真实项目测试反馈。
内测阶段迭代十多个版本,合并500+代码PR ,落地180多处优化与bug修复 。 配套底层工具同步更新:Vite 8.1、Rolldown 1.0、Oxlint、Oxfmt 全部升级,补齐多框架、多语法支持。
升级Beta后稳定性大幅提升,新增企业模板、智能缓存、全平台兼容、项目迁移工具,完全可以投入日常开发使用。