rollup-plugin-coffee-script

raw JSON →
2.0.0 verified Mon Apr 27 auth: no javascript

Rollup plugin that compiles CoffeeScript 2 files during bundling. Version 2.0.0 integrates CoffeeScript 2.x into Rollup builds without an extra build step. Unlike generic transpilers, it supports standard Rollup plugin options (include/exclude patterns) and pairs with rollup-plugin-commonjs and rollup-plugin-node-resolve for CommonJS interop and module resolution. Requires peer dependency coffeescript@2.x. Maintained by a single contributor on a best-effort cadence.

error Error: Cannot find module 'rollup-plugin-coffee-script'
cause Missing local installation or misspelled package name.
fix
Run 'npm install --save-dev rollup-plugin-coffee-script' and ensure package.json has it.
error TypeError: coffee is not a function
cause Wrong import: named import instead of default import.
fix
Use 'import coffee from 'rollup-plugin-coffee-script''.
error Error: Could not resolve 'coffeescript' (peer dependency)
cause Missing peer dependency coffeescript@2.x.
fix
Run 'npm install coffeescript@2' or add it to package.json.
gotcha Plugin does not resolve requires; you must add rollup-plugin-commonjs and rollup-plugin-node-resolve if your CoffeeScript uses require for Node modules.
fix Add @rollup/plugin-commonjs and @rollup/plugin-node-resolve to plugins.
breaking Version 2.0.0 drops CoffeeScript 1.x support; requires coffeescript@2.x.
fix Upgrade to CoffeeScript 2.x or pin to older plugin version (1.x).
deprecated The 'filter' option from very old versions is removed; use 'include'/'exclude'.
fix Replace 'filter' with 'include' minimatch pattern.
npm install rollup-plugin-coffee-script
yarn add rollup-plugin-coffee-script
pnpm add rollup-plugin-coffee-script

Minimal config: compile all .coffee files with 'bare' output (no top-level function wrapper).

// rollup.config.js
import coffee from 'rollup-plugin-coffee-script';

export default {
  input: 'src/main.coffee',
  output: { file: 'bundle.js', format: 'iife' },
  plugins: [
    coffee({
      include: '**/*.coffee',
      bare: true
    })
  ]
};