Registry / data / rollup-plugin-content

rollup-plugin-content

JSON →
library0.8.0jsnpmunverified

Rollup/Vite plugin for generating i18n static content and summaries from YAML or JSON files. Version 0.8.0, maintained regularly. Enables SPA blogs with i18n support by converting directory structures into importable summary and page modules. Differentiates from static site generators by integrating directly into the build pipeline, providing summary indexes by category and keywords.

npm install rollup-plugin-content
INSTALL
IMPORT
SIG · ROLLUP-PLUGIN-CONT
R
rollup-plugin-content
datajavascriptv0.8.0
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

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

content
import { content } from 'rollup-plugin-content'
const content = require('rollup-plugin-content')
ESM-only; requires Rollup or Vite to resolve. Named export, not default.
default
import content from 'rollup-plugin-content'
import { content } from 'rollup-plugin-content'
Default export is the same as named export 'content' since v0.4.0.
summary
import { summary } from 'rollup-plugin-content'
Sub-plugin for generating summaries; must be used inside content() plugins array.

Rollup configuration to generate i18n content and summaries from YAML files with languages 'en' and 'uk'.

import yaml from 'js-yaml'; import { content } from 'rollup-plugin-content'; export default { input: 'src/app.js', output: { format: 'es', dir: 'dist', sourcemap: true }, plugins: [ content({ langs: ['en', 'uk'], parse: yaml.load, plugins: [ summary({ fields: ['title', 'createdAt'] }) ] }) ] };
Debug
Known issues
breakingDefault export changed from `content` to `{ content as default }` in v0.4.0. Importing without braces may break.
fix
Replace `import content from 'rollup-plugin-content'` with `import { content } from 'rollup-plugin-content'` or upgrade to >=0.4.0.
affects: <0.4.0
deprecatedThe `matches` option is deprecated; use Rollup's `include`/`exclude` patterns via @rollup/pluginutils.
fix
Replace `matches` with `include` and `exclude` options (e.g., { include: ['**/*.yml'] })
affects: >=0.5.0
gotchaFiles must follow naming convention: `<name>.<lang>.yml` or `<name>.<lang>.json`. Incorrect naming may result in files not being processed.
fix
Use format like `about.en.yml`, not `about_en.yml` or `en.about.yml`.
affects: >=0.0.0
gotchaSummary imports are generated as side-effect modules; you must import them (e.g., `import '../content/pages.summary'`) even if not used in application code.
fix
Add an import statement in your entry file referencing the generated summary module.
affects: >=0.0.0
Errors
Common errors & fixes
Error: Could not resolve 'rollup-plugin-content'
Package not installed or import path incorrect (e.g., missing 'rollup-plugin-content' in package.json)
fix
Run `npm install -D rollup-plugin-content` and use correct import: `import { content } from 'rollup-plugin-content'`.
TypeError: content is not a function
Using default import without braces; package exports a named export 'content' as the plugin.
fix
Use `import { content } from 'rollup-plugin-content'`.
Module parse failed: Unexpected token (1:0) - You may need an appropriate loader to handle this file type.
Rollup/Vite cannot parse YAML files without a parse function provided to the content plugin.
fix
Install `js-yaml` and pass `parse: yaml.load` to `content()` options.
Upgrade
Version history
0.8.0latest on npm
Audit
Dependencies
@rollup/pluginutilsrequiredProvides utility functions for Rollup plugins (filtering, creating modules)
rolluprequiredPeer dependency; plugin only works with Rollup
viteoptionalPeer dependency; also compatible with Vite
Agent activity
7 hits · last 30 days
node
6
OpenAI (training)
1
Resources
rollup-plugin-content — npm install rollup-plugin-content · libregistry