vite-plugin-node weekly downloads statistics
By axe-me · npm · Vite plugins
Vite plugin to enable your node server HMR
vite-plugin-node has 38,592 recorded weekly downloads on npm, a decrease of 44.5% over the past 30 days.
It ranks #612 of 2,251 tracked npm listings by weekly downloads.
Over 90 days, weekly downloads changed by -34.4%.
PluginStats has 543 daily observations since Apr 23, 2025; the latest is from Oct 17, 2026.
About vite-plugin-node
Vite Plugin Node
A vite plugin to allow you to use vite as node dev server.
Features
• All the perks from Vite plus: • Node server HMR! (hot module replacement) • Support Express, Fastify, Koa and Nest out of the box • Support Custom Request Adapter • You can choose to use esbuild or swc to compile your typescript files
Get started
1. Install vite and this plugin with your favorite package manager, here use npm as example:
2. Create a vite.config.ts file in your project root to config vite to actually use this plugin:
3. Update your server entry to export your app named viteNodeApp or the name you configured.
ExpressJs
KoaJs
Cloud Functions
Fastify
if the app created by an async factory function you can just export the promise.
NestJs
4. Add a npm script to run the dev server:
5. Run the script! npm run dev
Custom Adapter
If your favorite framework not supported yet, you can either create an issue to request it or use the adapter option to tell the plugin how to pass down the request to your app. You can take a look how the supported frameworks implementations from the ./src/server folder. Example:
Build
This plugin leverages Vite SSR mode to build your app. All you need to do is add a build script to your package.json:
For more build config please check vite doc
Examples
See the examples folder.
Why?
While frontend development tooling is evolving rapidly in recent years, backend DX is still like in stone age. No hot module replacement; Typescript recompiling slow as funk; Lack of plugin system etc. Thanks to Vite.js created by Evan You (A.K.A creator of vue.js; my biggest idol developer), makes all those dreams for backend development come true!
How?
Vite by design has a middleware mode, which allows us to use it programmatically inside other modules. It's originally made for SSR, so that for each request, vite can load the renderer and render the latest changes you made to your app (). This plugin leverages this feature to load and execute your server app entry.
You may ask, isn't super slow, since it re-compiles/reloads the entire app? The answer is NO, because vite is smart. It has a builtin module graph as a cache layer, the graph is built up the first time your app loads. After that, when you update a file, vite will only invalidate that one and its parent modules, so that for next request, only those invalidated modules need to be re-compiled which is super fast thanks to esbuild or swc.
To-Do
As this plugin just fresh developed, there are still lots ideas need to be implemented, including:
• [ ] Test with a large node project, I need y'all helps on this! • [ ] Unit tests
Bugs
Please create an issue if you found any bugs, to help me improve this project!
Description from the npm listing.
- vite
- vite-plugin
- node
- hmr
Where vite-plugin-node sits in the listing
Each band is one page of 20. Weekly downloads on a log scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.
Charts
Images: 30d · 1y · all time · 1600×900 dark
Adoption over time
7/30/90-day growth
Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.
Recent observations
Full history (543)Similar npm Vite plugins plugins
Data source
Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.
Listing: https://www.npmjs.com/package/vite-plugin-node. First seen Oct 16, 2026; last successful collection Oct 18, 2026. See the methodology.