npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

vize

v0.185.0

Published

Vize - High-performance Vue.js toolchain in Rust

Readme

Vize

The vize npm package provides:

  • shared config utilities (defineConfig, loadConfig)
  • the native vize build command
  • the native vize fmt command
  • the native vize lint command
  • the native vize check command for package scripts
  • vize ready for fmt --write -> lint -> check -> build
  • vize upgrade for updating the npm package

For Vite integration, pair it with @vizejs/vite-plugin. For the full Rust-native CLI (lsp, ide, project-backed check, and check-server), use the GitHub release binaries or the Nix entry point. The Rust CLI is not published through crates.io for v1 alpha.

Need vp first? Install Vite+ once from the Vite+ install guide.

Installation

vp install -D vize

The package declares the @typescript/native-preview Corsa runtime as an optional dependency, so standard installs include the runtime needed by vize check. The --corsa-path CLI option remains available for custom native TypeScript builds.

CLI

The npm CLI exposes the common package-script commands:

vp exec vize build src
vp exec vize fmt --write src
vp exec vize lint --preset happy-path src
vp exec vize check src
vp exec vize ready src
vp exec vize upgrade

Recommended scripts:

{
  "scripts": {
    "vue:build": "vize build src",
    "vue:fmt": "vize fmt --write src",
    "vue:lint": "vize lint --preset happy-path src",
    "vue:check": "vize check src",
    "vue:ready": "vize ready src"
  }
}

Shared config discovery is supported for the npm CLI:

  • vize.config.pkl
  • vize.config.ts
  • vize.config.js
  • vize.config.mjs
  • vize.config.json

Pkl config files require either @pkl-community/pkl installed in the project or a pkl binary on PATH. The Pkl runtime is optional so packages that only consume Vize through framework plugins do not install it by default.

import { defineConfig } from "vize";

export default defineConfig({
  compiler: {
    sourceMap: true,
    vapor: false,
    customRenderer: false,
    templateSyntax: "standard",
  },
  vite: {
    scanPatterns: ["src/**/*.vue"],
  },
  linter: {
    preset: "opinionated",
  },
  typeChecker: {
    enabled: true,
    strict: true,
  },
});

Override config discovery with --config, or disable it with --no-config.

Static Analysis

vize lint runs Vue-aware Patina diagnostics through the native binding:

vp exec vize lint --preset essential --max-warnings 0 src
vp exec vize lint --preset ecosystem src
vp exec vize lint --preset opinionated --help-level short src
vp exec vize lint --format json src
vp exec vize lint --format plain src
vp exec vize lint --format agent src

Lint output supports text, ansi, plain, json, stylish, markdown, html, and agent. The human and agent-friendly formats include local rule documentation paths such as docs/content/rules/vue.md.

vize check in the npm package uses the packaged NAPI checker and the @typescript/native-preview Corsa runtime, so it can run from package.json scripts after installing vize:

vp exec vize check src --strict
vp exec vize check src --show-virtual-ts
vp exec vize check src --declaration --declaration-dir dist/types

Use the Rust CLI when you need Corsa project diagnostics across Vue, TS, TSX, and .d.ts inputs.

vize ready runs fmt --write, lint, check, and build in that order.

Compiler and Tool Options

Important shared fields:

| Field | Used by | Purpose | | ------------------------- | ---------------------- | --------------------------------------------------------- | | compiler.sourceMap | Vite plugin | Enable source maps | | compiler.ssr | npm build, Vite plugin | Force SSR compilation | | compiler.vapor | npm build, Vite plugin | Enable Vapor compilation | | compiler.customRenderer | npm build, Vite plugin | Support custom renderer element semantics | | compiler.templateSyntax | npm build, Vite plugin | Choose standard, strict, or quirks template syntax mode | | compiler.compatibility | integrations | Opt into legacy Vue, Nuxt, CDN, Vapor, or Webpack bridges | | compiler.scriptExt | npm build | Preserve TypeScript output or downcompile to JavaScript | | vite.scanPatterns | Vite plugin | Pre-compile matching Vue files | | linter.preset | npm lint | Select the Patina lint preset | | typeChecker.strict | npm check | Enable strict checks | | formatter.printWidth | npm fmt | Set formatting width |

Template syntax

compiler.templateSyntax defaults to "standard".

  • "standard" warns and rewrites invalid non-void HTML self-closing tags such as <div />.
  • "strict" reports invalid syntax as compilation errors.
  • "quirks" preserves compatibility quirks without extra warnings.
<template>
  <!-- Standard/strict reject this. Quirk mode compiles it as `item in items`. -->
  <div v-for="(item in items">{{ item }}</div>

  <!-- Standard/strict reject this. Quirk mode compiles it as `item in items`. -->
  <div v-for="item) in items">{{ item }}</div>

  <!-- Standard warns and rewrites this as `<div></div>`. Strict errors. Quirk keeps it as a leaf. -->
  <div />
</template>

Vue upstream reference:

Programmatic Config Helpers

import { defineConfig, loadConfig } from "vize";

export default defineConfig({
  linter: {
    preset: "happy-path",
  },
});

const config = await loadConfig(process.cwd());

Related Packages

  • @vizejs/vite-plugin
  • @vizejs/native
  • @vizejs/wasm
  • @vizejs/nuxt
  • @vizejs/vite-plugin-musea

License

MIT