Vite · VITE0024

Follow Vite plugin package naming conventions

Checks that a published Vite plugin package uses the package name prefix and package.json keywords from Vite's plugin conventions.
VITE0024vite-doctor/vitepluginswarnNo fix

Run this rule

pnpm vite-doctor . --framework vite --rules vite/plugin-package/naming-conventions

Why it matters

Vite's plugin conventions ask Vite-only plugins to use the vite-plugin- prefix and the vite-plugin keyword. Plugins that only work with Vue, React, or Svelte should put the framework in the prefix, as in vite-plugin-vue-. Plugins that also work with Rolldown should use the rolldown-plugin- prefix and the rolldown-plugin and vite-plugin keywords; Vite 7 and earlier gave the same guidance for rollup-plugin- packages. These names and keywords are how users find plugins on npm and recognize what a package works with. The Rule runs only on a public package (not private and without bin) that declares vite as a required peer dependency and whose main entry exports a function returning a Vite plugin. Scoped packages are exempt from the prefix checks because Vite's conventions do not define a scoped form; they still need the keywords. The plugin object's name property is not checked: the conventions say nothing about its format, and vite/plugin/require-name already reports a missing name.

Add the "vite-plugin" keyword, plus "rolldown-plugin" or "rollup-plugin" for packages with those prefixes. Use the vite-plugin- prefix, or vite-plugin-vue-, vite-plugin-react-, or vite-plugin-svelte- for framework-specific plugins. Renaming an already published package means publishing under the new name and deprecating the old one.

Example

Use the Vite plugin prefix and keyword

Before

{
  "name": "my-icons",
  "keywords": ["icons"]
}

After

{
  "name": "vite-plugin-icons",
  "keywords": ["vite-plugin", "icons"]
}
Copyright © 2026