Registry / web-framework / vite-plugin-symfony

vite-plugin-symfony

JSON →
library8.2.4jsnpmunverified

A Vite plugin for integrating Vite into Symfony applications. Current stable version is 8.2.4. It generates an entrypoints.json file with JS/CSS/preload dependencies and supports browser reload on Twig file changes. This plugin is designed to be used with the pentatrion/vite-bundle Symfony bundle. It supports Vite versions 3 through 8, making it compatible with modern Vite setups. Unlike generic Vite-Symfony integrations, this package offers a dedicated ecosystem with a Symfony bundle and active maintenance.

npm install vite-plugin-symfony
INSTALL
IMPORT
SIG · VITE-PLUGIN-SYMFON
V
vite-plugin-symfony
web-frameworkjavascriptv8.2.4
Install
Import
Disk
Pass rate
0/ 6
Env Coverage0 / 6
glibc
1822
musl
1822
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
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

default
import symfonyPlugin from 'vite-plugin-symfony';
const symfonyPlugin = require('vite-plugin-symfony');
This is a Vite plugin, which are typically used as ES modules. CommonJS require may work in some setups but ES import is recommended.
SymfonyPluginOptions
import type { SymfonyPluginOptions } from 'vite-plugin-symfony';
import { SymfonyPluginOptions } from 'vite-plugin-symfony';
SymfonyPluginOptions is a TypeScript interface, so it should be imported as a type to avoid runtime issues.
default export (named)
import symfonyPlugin from 'vite-plugin-symfony';
import { symfonyPlugin } from 'vite-plugin-symfony';
The plugin is exported as default, not a named export. Named import will fail.

Basic Vite configuration using vite-plugin-symfony with an entry point in assets/app.js.

// vite.config.js import { defineConfig } from 'vite'; import symfonyPlugin from 'vite-plugin-symfony'; export default defineConfig({ plugins: [ symfonyPlugin(), ], build: { rollupOptions: { input: { app: './assets/app.js', }, }, }, });
Debug
Known issues
breakingVersion 8.x requires Vite 5 or higher. Vite 4 is no longer supported.
fix
Upgrade Vite to ^5.0.0 or ^6.0.0 (or higher).
affects: >=8.0.0
breakingDefault export changed from createSymfonyPlugin (v7) to default export (v8).
fix
Use `import symfonyPlugin from 'vite-plugin-symfony'` instead of `import { createSymfonyPlugin } from 'vite-plugin-symfony'`.
affects: >=8.0.0
breakingThe plugin no longer automatically detects entry points; you must specify them in build.rollupOptions.input.
fix
Add rollupOptions.input to your Vite config.
affects: >=8.0.0
gotchaEnsure that the Symfony bundle pentatrion/vite-bundle is installed in your Symfony project, otherwise the generated entrypoints.json will not be picked up.
fix
Run `composer require pentatrion/vite-bundle` and follow bundle configuration.
affects: >=1.0.0
Errors
Common errors & fixes
Error: Cannot find module 'vite-plugin-symfony'
Package not installed or not in node_modules.
fix
Run `npm install vite-plugin-symfony`.
TypeError: symfonyPlugin is not a function
Using named import instead of default import.
fix
Use `import symfonyPlugin from 'vite-plugin-symfony'` (default import).
Error: Could not resolve entry module 'app'.
Missing or misconfigured input entry in build.rollupOptions.input.
fix
Ensure build.rollupOptions.input has a key (e.g., 'app') pointing to a valid entry file.
Upgrade
Version history
8.2.4latest on npm
Audit
Dependencies
viterequiredPeer dependency required for the plugin to function with Vite.
Agent activity
12 hits · last 30 days
node
10
OpenAI (training)
1
Resources
vite-plugin-symfony — npm install vite-plugin-symfony · libregistry