Production manifests are published as a sibling of the plugin's entry module
(PLUGIN_ENTRY_FILENAME) and advertise every file the plugin needs at
runtime so the host can eagerly cache them for offline use.
Dev manifests (served by vite dev via composerPlugin) set devEntry
to point at the unbundled source entry. The host's loader treats the presence
of devEntry as the dev-mode signal: it imports the entry directly from the
dev server, skips eager asset caching, and skips static stylesheet injection
(Vite handles CSS via runtime <style> injection during HMR). assets is not
required to enumerate every file in dev mode — chunks and styles flow through
the dev server on demand.
Schema for a third-party plugin manifest.
Production manifests are published as a sibling of the plugin's entry module (PLUGIN_ENTRY_FILENAME) and advertise every file the plugin needs at runtime so the host can eagerly cache them for offline use.
Dev manifests (served by
vite devvia composerPlugin) setdevEntryto point at the unbundled source entry. The host's loader treats the presence ofdevEntryas the dev-mode signal: it imports the entry directly from the dev server, skips eager asset caching, and skips static stylesheet injection (Vite handles CSS via runtime<style>injection during HMR).assetsis not required to enumerate every file in dev mode — chunks and styles flow through the dev server on demand.