Herdr UI
Herdr의 TUI가 뛰어나며, 창을 통해 추가되는 기능
blazing fast Vue.js toolchain. compiler, linter, type checker, formatter, lsp, story system, editors. already 30k+ tests.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗[!WARNING] Vize is experimental and in its Real World Testing phase — not a completely production-ready toolchain yet. Breaking changes and behavior that diverges from Vue are expected. Review the stability guide, production-readiness checklist, and support policy before adopting it.
Vize is a Rust-native toolchain for Vue. One shared parser powers compilation, linting, type-checking, formatting, and editor tooling, so the Vue workflow runs on the same core instead of a patchwork of disconnected tools.
It plugs into the tools you already use: @vizejs/vite-plugin for Vite, @vizejs/nuxt for Nuxt,
the vize package for project scripts, oxlint-plugin-vize for Oxlint, and
@vizejs/vite-plugin-musea for the component gallery.
Vize is a toolchain you add to a Vue app. It does not scaffold the app itself. Pick the shortest path that matches your project; the docs have the rest.
On a Vue 3 + Vite app, replace @vitejs/plugin-vue with @vizejs/vite-plugin. Your SFCs stay as
they are.
npm i -D @vizejs/vite-plugin
// vite.config.ts
import { defineConfig } from "vite";
import vize from "@vizejs/vite-plugin";
export default defineConfig({
plugins: [vize()],
});
Then use the same dev / build scripts as before. This swaps SFC compilation only. Lint, format,
and type-check stay on your current tools until you add them. The claim is Vue 3 SFCs in Vite — see
Drop-in Scope.
Nuxt apps should use @vizejs/nuxt instead of wiring the Vite plugin by hand.
Type-check .vue files with TypeScript 7.1 or newer and Vize's content mapper.
tsrs can run the same tsconfig.
npm i -D vize typescript@beta
{
"contentMappers": [{ "package": "vize", "extensions": [".vue"] }]
}
npx tsc --runExternalCode --noEmit -p tsconfig.json
npx tsrs --runExternalCode --noEmit -p tsconfig.json
typescript@beta is the 7.1 beta, the first release that includes content mappers.
After 7.1 is stable, install typescript at 7.1 or newer and keep the same command.
Details are in the type checking guide.
Create a Vue + Vite or Nuxt app first, then let vize init wire the toolchain.
Vue + Vite:
npm create vue@latest my-app
cd my-app
npx vize init
Nuxt:
npm create nuxt@latest my-app
cd my-app
npx vize init
init can add the Vite plugin or Nuxt module, Oxlint, vize fmt, vize check, and a VS Code
recommendation. If you already have Vite+, run
vpx vize init instead.
For an existing Vite, Vite+, or Nuxt project, preview the plan, then apply it:
npx vize init --dry-run
npx vize init
init is idempotent and lets you choose surfaces. Existing vize.config.* is left as-is. A second
run adds no duplicate plugin, script, or dependency. The first run may still add vize:* scripts
and update a plain vite.config.* or nuxt.config.*.
Non-interactive:
npx vize init --yes --lint --bundler --fmt --typecheck --editor
If you only want the compiler, use the drop-in swap above. Custom vue({ ... }) options and unusual
Vite configs are not rewritten automatically. See Project Setup.
Vize is in its Real World Testing phase: fix requests and PRs are very welcome, and we are looking for reasonably large Vue projects to use as test beds.
One committed artifact supplies the README and every locale. File counts are stated per row.
| Runner | Measured | Runs | Warmups |
|---|---|---|---|
blacksmith-32vcpu-ubuntu-2404 (32 CPU) | 2026-09-16T08:19:25.262Z | 3 | 1 |
Actions · f9cc50ee2e2f · JSON
| Surface | Files | Existing tool | Existing | Vize | Speedup |
|---|---|---|---|---|---|
| SFC compile | 3,000 | @vue/compiler-sfc | 3.57s | 65.0ms | 54.8× |
| Lint | 3,000 | eslint-plugin-vue | 20.75s | 114.0ms | 182.0× |
| Format | 3,000 | Prettier | 29.72s | 351.4ms | 84.6× |
| Type check | 500 | vue-tsc | 6.75s | 1.37s | 4.9× |
| Vite build | 1,000 | @vitejs/plugin-vue | 1.66s | 889.2ms | 1.9× |
| Nuxt build | 250 | Nuxt compiler | 3.07s | 3.21s | 0.95× |
Type-check ratios compare Vize with vue-tsc, the type checker Vue projects run today. vue-tsc drives the JavaScript TypeScript compiler while Vize drives native tsgo, so the ratio covers the whole toolchain rather than the Vue layer alone; the per-engine-class tables in the full snapshot rank same-engine tools against each other to isolate that layer. Each timed invocation passes diagnostic-work validation. Diagnostic coverage differs between tools; these ratios do not prove accuracy parity or a performance improvement over an earlier Vize version. Rejected comparators have no published timing or rank.
Nuxt measures the entire build pipeline, not isolated SFC compilation. Most build work is shared by both variants. Its ratio is 0.95x; a ratio below 1 means Vize was slower in this run.
See the Blacksmith benchmark snapshot for per-variant timings, diagnostic counts, rejected measurements and methodology.
| Tool | Version | Binary SHA-256 |
|---|---|---|
| Vize | vize 0.424.11 | dc5e840133beec86106ca27c496ca01fbff4299a8aef6c3a0f2fca3131f88fe3 |
| tsgo | Version 7.0.2 | 4f2de678286401759b3fb4475bafe35b8f32b4b3a07d92642bbf37eadc9b34a4 |
| vue-tsc | Version 6.0.3 | 811cc8124f36b6c770964d486da62af1b9db6949f62bc47205982d17e8e7dc8d |
| verter-tsc | verter-tsc 0.0.1-beta.3 | 81bec5c957487bd2caf15312bf4f180afadd074f11c1d34cb4bb2c66bd7ac224 |
| Golar | Golar version 0.1.10 | a100c0e559b6cf85fc3e67a65f0b8eedcee0ccf624022fc4882bea2a3d6316da |
| TypeScript (vue-tsc) | n/a | n/a |
| Vue | 3.6.0-beta.10 | n/a |
| ESLint | v10.4.1 | 41dd060d45aca4a2144b94862e21e285bbb726b19e61db7a03c5b2e0b67973cc |
| Prettier | 3.8.3 | a7a78ad15344be4f14f24832a8c5fa5918bec4339b8d1d0903a5167c34ecb428 |
| Node.js | v24.14.0 | n/a |
Backend: native TypeScript engine ready at /home/runner/_work/vize/vize/node_modules/@typescript/typescript-linux-x64/lib/tsc. Planted-diagnostic gating for the type-check rows lives in tools/benchmarks/scripts/check-gate.mjs (.github/workflows/check-bench.yml).
This project draws inspiration from Volar.js, vuejs/language-tools, eslint-plugin-vue, eslint-plugin-vuejs-accessibility, Lightning CSS, Storybook, and OXC.
Special thanks to:
#frontend_phpcon_do for persistently reporting fix cases while
building a Nuxt-based conference website with Vize, then carrying that validation all the way to
production adoption
(,
).Vize is a personal project by ubugeeei, licensed under the MIT License and maintained as a non-commercial OSS effort. It is not owned by any specific company, is intended to remain open, and is not being built with a buyout in mind.