Skip to content
/ vize Public

Unofficial High-Performance Vue.js Toolchain in Rust

License

Notifications You must be signed in to change notification settings

ubugeeei/vize

Repository files navigation

Vize

Unofficial High-Performance Vue.js Toolchain in Rust

/viːz/ — Named after Vizier + Visor + Advisor: a wise tool that sees through your code.

DocumentationPlaygroundSponsor

crates.io npm npm npm License

Warning

This project is under active development and is not yet ready for production use. APIs and features may change without notice.


Features

  • Compile — Vue SFC compiler (DOM / Vapor / SSR)
  • Lint — Vue.js linter with i18n diagnostics
  • Format — Vue.js formatter
  • Type Check — TypeScript type checker for Vue
  • LSP — Language Server Protocol for editor integration
  • Musea — Component gallery (Storybook-like)
  • MCP — AI integration via Model Context Protocol

Quick Start

npm install -g vize
vize build src/**/*.vue    # Compile
vize fmt --check           # Format check
vize lint --fix            # Lint & auto-fix
vize check --strict        # Type check

See the documentation for detailed usage, Vite plugin setup, WASM bindings, and more.

Performance

Benchmarks with 15,000 Vue SFC files (36.9 MB). "User-facing speedup" = traditional tool (single-thread) vs Vize (multi-thread).

Tool Traditional (ST) Vize (MT) User-facing Speedup
Compiler @vue/compiler-sfc 10.52s 380ms 27.7x
Linter eslint-plugin-vue 65.30s patina 5.48s 11.9x
Formatter Prettier 82.69s glyph 23ms 3,666x
Type Checker vue-tsc 35.69s canon 472ms 75.5x *
Vite Plugin @vitejs/plugin-vue 16.98s @vizejs/vite-plugin 6.90s 2.5x **
Detailed compiler benchmark
@vue/compiler-sfc Vize Speedup
Single Thread 10.52s 3.82s 2.8x
Multi Thread 3.71s 380ms 9.8x

* canon is still in early development and does not yet cover the full feature set of vue-tsc. The speedup partly reflects the difference in work performed.

** Vite Plugin benchmark uses Vite v8.0.0-beta.15 (Rolldown). The plugin replaces only the SFC compilation step; all other Vite internals are unchanged.

Run mise run bench:all to reproduce all benchmarks.

Contributing

See the documentation for architecture overview and development setup.

Credits

This project is inspired by and builds upon the work of these amazing projects: Volar.jsvuejs/language-toolseslint-plugin-vueeslint-plugin-vuejs-accessibilityLightning CSSStorybookOXC

Sponsors

This project is maintained by @ubugeeei. If you find Vize useful, please consider sponsoring.

License

MIT