Registry /
web-framework / vite-plugin-full-reload
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslnode 18–223 runs
build_error
glibcnode 18–223 runs
build_error
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
default
✓ import FullReload from 'vite-plugin-full-reload'
✗ const FullReload = require('vite-plugin-full-reload')
Default import; CommonJS require works but TypeScript type inference may be limited. ESM-only types are provided.
FullReload
✓ import FullReload from 'vite-plugin-full-reload'
✗ import { FullReload } from 'vite-plugin-full-reload'
The package exports a default function, not a named export Named import like 'import { FullReload }' is incorrect.
VitePluginFullReload
✓ import FullReload from 'vite-plugin-full-reload'
✗ import VitePluginFullReload from 'vite-plugin-full-reload'
The default export is named 'FullReload' in documentation; using any other import name is fine but the actual symbol is default.
Shows how to add vite-plugin-full-reload to a Vite config to trigger full page reload on changes to server-rendered templates.
import { defineConfig } from 'vite'
import FullReload from 'vite-plugin-full-reload'
export default defineConfig({
plugins: [
// Reload the page when routes.rb or any view template changes
FullReload(['config/routes.rb', 'app/views/**/*'], {
root: process.cwd(), // optional, default
delay: 0, // optional, default
always: true // optional, default
})
]
})
Debug
Known issues
gotchaThe plugin triggers a full page reload, not HMR. If you expect HMR-like partial updates, this will cause complete page refresh.fixUse HMR plugins for JS/TS changes; this plugin is intended for non-imported files (e.g., server-side templates).
affects: >=1.0.0
gotchaThe 'always' option defaults to true, meaning a reload is triggered even if the changed file is not currently displayed in the browser. Set always: false to limit reloads to active tabs.fixExplicitly set `always: false` if you want reload only when the file is visible in the browser.
affects: >=1.0.0
deprecatedNo deprecations known. Plugin is actively maintained.
Errors
Common errors & fixes
Error: Cannot find module 'vite-plugin-full-reload'
Package not installed or missing in node_modules.
fixRun `npm install vite-plugin-full-reload --save-dev`
TypeError: FullReload is not a function
Wrong import style: using named import instead of default import.
fixUse `import FullReload from 'vite-plugin-full-reload'` instead of `import { FullReload } from ...` TypeError: Cannot read properties of undefined (reading 'map')
The first argument to FullReload must be an array of strings (glob patterns). Passing a string or undefined causes this error.
fixEnsure you pass an array: `FullReload(['config/routes.rb'])`
Audit
Dependencies
picomatchrequiredPattern matching for glob expressions
viteoptionalVite plugin, expected as peer dependency