Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/rollup/awesome

⚡️ Delightful Rollup Plugins, Packages, and Resources
https://github.com/rollup/awesome

List: awesome

Last synced: 5 days ago
JSON representation

⚡️ Delightful Rollup Plugins, Packages, and Resources

Awesome Lists containing this project

README

        


Awesome Rollup

# Awesome Rollup [![Awesome](https://awesome.re/badge.svg)](https://awesome.re)

⚡️ Delightful Rollup Plugins, Packages, and Resources

## Resources

- [Official Guide](https://rollupjs.org/guide/en) - The user guide and documentation site.

## Plugins

### Core Plugins

Plugins created and maintained by the Rollup organization.

- [alias](https://github.com/rollup/plugins/tree/master/packages/alias) - Alias modules in a build.
- [babel](https://github.com/rollup/plugins/tree/master/packages/babel) - Seamless integration with Babel.
- [buble](https://github.com/rollup/plugins/tree/master/packages/buble) – Transpile with Bublé.
- [commonjs](https://github.com/rollup/plugins/tree/master/packages/commonjs) - Convert CommonJS modules to ES Modules.
- [dsv](https://github.com/rollup/plugins/tree/master/packages/dsv) - Convert CSV and TSV files into JavaScript modules.
- [eslint](https://github.com/rollup/plugins/tree/master/packages/eslint) - Lint entry points and all imported files with ESLint.
- [html](https://github.com/rollup/plugins/tree/master/packages/html) - Creates HTML files to serve Rollup bundles
- [image](https://github.com/rollup/plugins/tree/master/packages/image) - Import JPG, PNG, GIF and SVG images.
- [inject](https://github.com/rollup/plugins/tree/master/packages/inject) - Scans for global variables and injects `import` statements.
- [json](https://github.com/rollup/plugins/tree/master/packages/json) - Convert JSON files to ES Modules.
- [legacy](https://github.com/rollup/plugins/tree/master/packages/legacy) - Add export statements to plain scripts.
- [multi-entry](https://github.com/rollup/plugins/tree/master/packages/multi-entry) - Multiple entry points for a bundle.
- [node-resolve](https://github.com/rollup/plugins/tree/master/packages/node-resolve) - Use the Node resolution algorithm.
- [replace](https://github.com/rollup/plugins/tree/master/packages/replace) – Replace occurrences of a set of strings.
- [run](https://github.com/rollup/plugins/tree/master/packages/run) - Run your bundle after it's generated.
- [strip](https://github.com/rollup/plugins/tree/master/packages/strip) - Remove expressions from code.
- [sucrase](https://github.com/rollup/plugins/tree/master/packages/sucrase) - Compile
, Flow, JSX.
- [typescript](https://github.com/rollup/plugins/tree/master/packages/typescript) - Seamless integration with Typescript.
- [url](https://github.com/rollup/plugins/tree/master/packages/url) - Inline import files as data-URIs.
- [virtual](https://github.com/rollup/plugins/tree/master/packages/virtual) - Load modules from memory.
- [wasm](https://github.com/rollup/plugins/tree/master/packages/wasm) - Inlines and imports WebAssembly modules.
- [yaml](https://github.com/rollup/plugins/tree/master/packages/yaml) - Import data from YAML files.

### All-Purpose Awesome

- [build-statistics](https://github.com/nemwiz/build-statistics-plugin) - Plugin that keeps a continuous log of your build time.
- [dev](https://github.com/pearofducks/rollup-plugin-dev) - Development server with additional logging and options.
- [graph](https://github.com/ondras/rollup-plugin-graph) – Generates a module dependency graph.
- [nollup](https://github.com/PepsRyuu/nollup) - Rollup-compatible development bundler providing Hot Module Replacement.
- [notify](https://github.com/MikeKovarik/rollup-plugin-notify) – Display errors as system notifications.
- [progress](https://github.com/jkuri/rollup-plugin-progress) - Show build progress in the console.
- [rollpkg](https://github.com/rafgraph/rollpkg) - No config build tool to create packages with Rollup and TypeScript
- [serve](https://github.com/thgh/rollup-plugin-serve) - Development Server in a Plugin.
- [sizes](https://github.com/tivac/rollup-plugin-sizes) - Display bundle content and size in the console.
- [size-snapshot](https://github.com/TrySound/rollup-plugin-size-snapshot) - Track bundle size and treeshakability with ease.
- [visualizer](https://github.com/btd/rollup-plugin-visualizer) - Bundle and dependency visualizer.

### Code Quality

Plugins which help with code quality.

- [analyzer](https://github.com/doesdev/rollup-plugin-analyzer) - Statistics and Metrics for a bundle.
- [cleanup](https://github.com/aMarCruz/rollup-plugin-cleanup) – Remove and modify code based on an opinionated ruleset.
- [eslint-bundle](https://github.com/nikolay-borzov/rollup-plugin-eslint-bundle) - Lint bundles with ESLint.
- [flow](https://github.com/leebyron/rollup-plugin-flow) - Remove Flow type annotations.
- [flow-entry](https://github.com/swansontec/rollup-plugin-flow-entry) - Export Flow types from a bundle.
- [istanbul](https://github.com/artberri/rollup-plugin-istanbul) - Seamless integration with Istanbul.
- [sass-lint](https://github.com/kopacki/rollup-plugin-sass-lint) - Lint SCSS files
- [stylint](https://github.com/sandark7/rollup-plugin-stylint) - Lint Stylus files.
- [unassert](https://github.com/unassert-js/rollup-plugin-unassert) - Remove assertion calls.

### CSS

Plugins for working with CSS.

- [bundle-scss](https://github.com/weizhenye/rollup-plugin-bundle-scss) - Bundle all SCSS imports into one SCSS file.
- [collect-sass](https://github.com/nathancahill/rollup-plugin-collect-sass) - Compiler SASS files in a single context.
- [css-only](https://github.com/thgh/rollup-plugin-css-only) – Output plain CSS.
- [css-porter](https://github.com/RJHwang/rollup-plugin-css-porter) - Combine CSS imports and output to file.
- [embed-css](https://github.com/kei-ito/rollup-plugin-embed-css) - Import and append CSS to a bundle.
- [less](https://github.com/xiaofuzi/rollup-plugin-less) - Compile LESS files.
- [less-modules](https://github.com/katrotz/rollup-plugin-less-modules) - Import or Bundle LESS files.
- [modular-css](https://github.com/tivac/modular-css#rollup) - Alternative CSS Modules implementation supporting Rollup.
- [postcss](https://github.com/egoist/rollup-plugin-postcss) - Seamless integration with PostCSS.
- [sass](https://github.com/differui/rollup-plugin-sass#readme) - SASS integration for a bundle.
- [scss](https://github.com/thgh/rollup-plugin-scss) - Compile SASS and CSS.
- [styles](https://github.com/Anidetrix/rollup-plugin-styles) - Universal plugin for styles: PostCSS, Sass, Less, Stylus and more.
- [stylus-css-modules](https://github.com/mtojo/rollup-plugin-stylus-css-modules) – Compile Stylus and inject CSS modules
- [sass-variables](https://github.com/gmfun/rollup-plugin-sass-variables) - Import SASS variables as Objects.

### Frameworks

Plugins for working with awesome JavaScript frameworks.

- [angular](https://github.com/cebor/rollup-plugin-angular) - Angular2 template and styles inliner.
- [jsx](https://github.com/konsumer/rollup-plugin-jsx) - Compile React JSX and JSX-like components.
- [riot](https://github.com/riot/rollup-plugin-riot) - Riot.js tagfile support.
- [svelte](https://github.com/sveltejs/rollup-plugin-svelte) — Compile Svelte components.
- [vue](https://github.com/vuejs/rollup-plugin-vue) - Compile Vue components.
- [vue-inline-svg](https://github.com/e-e-e/rollup-plugin-vue-inline-svg) - Import SVG files as Vue components.

### Modules

Plugins which control the behaviour of modules: dependencies, imports, exports,
and external modules.

- [amd](https://github.com/piuccio/rollup-plugin-amd) - Convert AMD modules to ES6.
- [async-define](https://github.com/tes/rollup-plugin-async-define) - Wrap an AMD bundle with async-define.
- [baked-env](https://github.com/victornpb/rollup-plugin-baked-env) - Import `process.env` as a module for baking environment variables at build time.
- [bower-resolve](https://github.com/mjeanroy/rollup-plugin-bower-resolve) – Use Bower the resolution algorithm.
- [cjs-es](https://github.com/eight04/rollup-plugin-cjs-es) - Convert CommonJS modules without proxying and reassignment.
- [consts](https://github.com/NotWoods/rollup-plugin-consts) - Import constants at build time.
- [external-assets](https://github.com/recursive-beast/rollup-plugin-external-assets) - Make assets external but include them in the output.
- [external-globals](https://github.com/eight04/rollup-plugin-external-globals) - Replace imported bindings with a global variable.
- [force-binding](https://github.com/tehvgg/rollup-plugin-force-binding) - Composes multi-entry and node-resolve to prevent duplicated imports.
- [glob-import](https://github.com/kei-ito/rollup-plugin-glob-import) - Glob support for import statements.
- [hoist-import-deps](https://github.com/vikerman/rollup-plugin-hoist-import-deps) - Avoid waterfalls when dynamically importing modules by hoisting import dependencies.
- [ignore](https://github.com/alexlur/rollup-plugin-ignore) - Ignore modules by replacing with empty objects.
- [import-alias](https://github.com/Hedzer/rollup-plugin-import-alias) - Maps an import path to another.
- [import-assertions](https://github.com/swiing/rollup-plugin-import-assertions) - Add support for TC39 import assertions (e.g. assert types `css` and `json`)
- [includepaths](https://github.com/dot-build/rollup-plugin-includepaths) – Provide base paths from which to resolve imports.
- [named-directory](https://github.com/frostney/rollup-plugin-named-directory) - Provides shortcuts for colocated modules in directories.
- [node-builtins](https://github.com/calvinmetcalf/rollup-plugin-node-builtins) - Node builtin modules as ES modules.
- [node-globals](https://github.com/calvinmetcalf/rollup-plugin-node-globals) - Injects node globals.
- [node-resolve-angular](https://github.com/OasisDigital/rollup-plugin-node-resolve-angular) - Node module resolution support for Angular 4+.
- [ts-paths](https://github.com/bitshiftza/rollup-plugin-ts-paths) – Resolve modules from `tsconfig` paths.
- [skypack-resolver](https://github.com/vinicius73/rollup-plugin-pika-resolver) - Use [Skypack CDN](https://skypack.dev/) for external dependencies.
- [web-worker-loader](https://github.com/darionco/rollup-plugin-web-worker-loader) - Package Workers for NodeJS and the browser.

### Other File Imports

Plugins which allow importing other types of files as modules.

- [file-as-blob](https://gitlab.com/IvanSanchez/rollup-plugin-file-as-blob) – Import a file as a `blob:` URL.
- [geojson](https://github.com/n370/rollup-plugin-geojson) - Convert GeoJSON files to ES Modules.
- [glsl](https://github.com/vwochnik/rollup-plugin-glsl) - Import GLSL shaders as compressed strings.
- [glsl-optimize](https://github.com/docd27/rollup-plugin-glsl-optimize) - Import and optimize GLSL shaders as compressed strings. Supports [glslify](https://github.com/glslify/glslify).
- [glslify](https://github.com/glslify/rollup-plugin-glslify) - Import GLSL strings with [glslify](https://github.com/glslify/glslify).
- [gltf](https://github.com/bengsfort/rollup-plugin-gltf) - Import glTF 3d models as a URI or inlined JSON.
- [html](https://github.com/bdadam/rollup-plugin-html) - Import html files as strings.
- [hypothetical](https://github.com/Permutatrix/rollup-plugin-hypothetical) - Import modules from a virtual filesystem.
- [imagemin](https://github.com/malchata/rollup-plugin-imagemin) - Optimize images with [imagemin](https://github.com/imagemin/imagemin).
- [jsonlines](https://github.com/petlack/rollup-plugin-jsonlines) - Imports .jsonl (JSON Lines) files as JSON arrays.
- [markdown](https://github.com/vijithassar/rollup-plugin-markdown) - Import code from fenced code blocks in Markdown.
- [md](https://github.com/xiaofuzi/rollup-plugin-md) - Import and compile markdown files.
- [mjml](https://github.com/daankauwenberg/rollup-plugin-mjml) - Convert MJML into responsive email templates.
- [@wasm-tool/rust](https://github.com/wasm-tool/rollup-plugin-rust) - Bundle and import Rust crates.
- [rust](https://github.com/DrSensor/rollup-plugin-rust) - Compile Rust as WebAssembly or a Node.js Add-on.
- [spritesmith](https://github.com/linjinying/rollup-plugin-sprite) — Convert a set of images into a spritesmith sprite-sheet.
- [string](https://github.com/TrySound/rollup-plugin-string) – Import text files as strings.
- [svg-import](https://github.com/korywka/rollup-plugin-svg-import) - Import SVG files as SVG DOM Node or string.
- [svg-sprite](https://github.com/VladShcherbin/rollup-plugin-svg-sprite) — Import SVG files as an external SVG sprite.
- [svg-to-symbol](https://github.com/fjc0k/rollup-plugin-svg-to-symbol) - Import SVG files as symbol strings.
- [svgo](https://github.com/porsager/rollup-plugin-svgo) - Import SVG files as strings
- [vinyl](https://github.com/operandom/rollup-plugin-vinyl) - Import from [Vinyl](https://github.com/gulpjs/vinyl) files
- [smart-asset](https://github.com/sormy/rollup-plugin-smart-asset) - Import any assets as url using rebase, copy or inline mode. Similar to `url` but has more hashing options and works well together with babel using transform hook.
- [toml](https://github.com/YanceyOfficial/rollup-plugin-toml) - Convert .toml files to ES6 modules.

### Output

Plugins which affect the final output of a bundle.

- [app-utils](https://github.com/Autodesk/rollup-plugin-app-utils) - Common build utilities for applications.
- [banner](https://github.com/yingye/rollup-plugin-banner) - Append content before js bundle.
- [bundleutils](https://github.com/pschroen/rollup-plugin-bundleutils) - Set of commonly used utility functions.
- [bundle-html](https://github.com/haifeng2013/rollup-plugin-bundle-html) - Inject the bundle js/css files as well as external js/css files to html template.
- [by-output](https://github.com/wmzy/rollup-plugin-by-output) - Apply plugins according to special output option, reduce config and save time.
- [clear](https://github.com/DongShelton/rollup-plugin-clear) - Clear an output directory before a build.
- [closure-compiler](https://github.com/ampproject/rollup-plugin-closure-compiler) – Compress Rollup Bundles with Closure Compiler.
- [concatfiles](https://github.com/kpulkit29/rollup-plugin-concatfiles) - Concatenate files to bundle or other files.
- [copy](https://github.com/meuter/rollup-plugin-copy) - Copy files during a build.
- [copy-assets](https://github.com/bengsfort/rollup-plugin-copy-assets) - Copy specified assets to the output directory.
- [cpy](https://github.com/paulmelnikow/rollup-plugin-cpy) - Easily copy files and folders during a build.
- [copy-smartly](https://github.com/TrickyPi/rollup-copy-smartly) - Smartly copy files if they are changed, created or deleted.
- [delete](https://github.com/vladshcherbin/rollup-plugin-delete) - Delete files and folders during a build.
- [emit-ejs](https://github.com/juliendargelos/rollup-plugin-emit-ejs) - Emit files from ejs templates.
- [espruino](https://github.com/joakim/rollup-plugin-espruino) - Send a bundle to [Espruino](http://www.espruino.com) devices.
- [filesize](https://github.com/ritz078/rollup-plugin-filesize) - Display the file size of the bundle in the console.
- [generate-html-template](https://github.com/bengsfort/rollup-plugin-generate-html-template) - Generate an HTML file for a bundle.
- [generate-package-json](https://github.com/VladShcherbin/rollup-plugin-generate-package-json) - Generate a `package.json` file with dependencies from your bundle.
- [gzip](https://github.com/kryops/rollup-plugin-gzip) - Create a compressed GZ artifact for your bundle.
- [hash](https://github.com/phamann/rollup-plugin-hash) – Generate output files with unique hashes.
- [html-minifier](https://github.com/juliendargelos/rollup-plugin-html-minifier) – Minify HTML output files using html-minifier.
- [iife](https://github.com/eight04/rollup-plugin-iife) - Convert ES modules to Immediately Invoked Function Expressions.
- [license](https://github.com/mjeanroy/rollup-plugin-license) - Add Licensing to a bundle.
- [live-reload](https://github.com/thgh/rollup-plugin-livereload) - Live reloading for a bundle.
- [manifest-json](https://github.com/adamzerella/rollup-plugin-manifest-json) - Generate a `manifest.json` file for a PWA.
- [output-manifest](https://github.com/shuizhongyueming/rollup-plugin-output-manifest) - Generating a chunk manifest.
- [preserve-shebang](https://github.com/developit/rollup-plugin-preserve-shebang) - Preserves leading shebang in a build entry.
- [prettier](https://github.com/mjeanroy/rollup-plugin-prettier) - Run prettier on a bundle.
- [rebase](https://github.com/sebastian-software/rollup-plugin-rebase) - Copies and adjusts asset references to new destination-relative location.
- [shift-header](https://github.com/jacksonrayhamilton/rollup-plugin-shift-header) - Move comment headers to the top of a bundle.
- [sri](https://github.com/JonasKruckenberg/rollup-plugin-sri) - Add subresource integrity attributes for your bundle.
- [static-site](https://gitlab.com/thekelvinliu/rollup-plugin-static-site) - Generate HTML for a bundle.
- [terser](https://github.com/TrySound/rollup-plugin-terser) - Minify a bundle using Terser.
- [uglify](https://github.com/TrySound/rollup-plugin-uglify) - Minify a bundle with UglifyJS.
- [version-injector](https://github.com/djhouseknecht/rollup-plugin-version-injector) - Inject your package’s version number into static build files.
- [zip](https://github.com/mentaljam/rollup-plugin-zip) - Pack all assets into a zip file.

### Templating

Plugins for working with template languages.

- [twig](https://github.com/fm-ph/rollup-plugin-twig) - Import pre-compiled Twig.js templates.
- [dustjs](https://github.com/chrisdothtml/rollup-plugin-dustjs) - Import Dust.js templates.
- [eft](https://github.com/ClassicOldSong/rollup-plugin-eft) - Compile ef.js templates.
- [ejs](https://github.com/trofima/rollup-plugin-ejs) - Compile .EJS templates.
- [jst](https://github.com/btd/rollup-plugin-jst) - Compile Lodash templates.
- [lit-html](https://gitlab.com/rockerest/rollup-plugin-lit-html) - Compile "plain" .html files as `lit-html` templates
- [posthtml-template](https://github.com/Vanilla-IceCream/rollup-plugin-posthtml-template) - Seamless integration with PostHTML
- [pug](https://github.com/aMarCruz/rollup-plugin-pug) - Compile Pug Templates as es6 modules.
- [pug-html](https://github.com/tycho01/rollup-plugin-pug-html) - Import Pug Templates as HTML strings during a build.
- [reshape](https://github.com/Vanilla-IceCream/rollup-plugin-reshape) - Compile Reshape Templates.

### Text Replacement

Plugins which search for, and replace text in a bundle.

- [ascii](https://github.com/mbostock/rollup-plugin-ascii) – Rewrite non-ASCII characters as string literals.
- [re](https://github.com/jetiny/rollup-plugin-re) – Replace text with Regular Expressions.
- [strip-code](https://github.com/se-panfilov/rollup-plugin-strip-code) - Remove text with Regular Expressions.

### Transpilation

Plugins which affect code.

- [async](https://github.com/leebyron/rollup-plugin-async) - Replace `async` functions with generators.
- [bucklescript](https://github.com/shrynx/rollup-plugin-bucklescript) - Compile ReasonML / OCaml.
- [coffee-react](https://github.com/N1kto/rollup-plugin-coffee-react) - Compile CJSX and CoffeeScript.
- [coffee-script](https://github.com/lautis/rollup-plugin-coffee-script) – Compile CoffeeScript.
- [dts](https://github.com/Swatinem/rollup-plugin-dts) - Rollup `.d.ts` TypeScript Definition files.
- [elm](https://github.com/ulisses-alves/rollup-plugin-elm) - Compile Elm.
- [esbuild-transform](https://github.com/exuanbo/rollup-plugin-esbuild-transform) - Transform with [esbuild](https://github.com/evanw/esbuild).
- [flat-dts](https://github.com/run-z/rollup-plugin-flat-dts) - `.d.ts` files flattener.
- [jspicl](https://github.com/AgronKabashi/rollup-plugin-jspicl) - Transpile JavaScript into PICO-8 Lua.
- [nodent](https://github.com/oligot/rollup-plugin-nodent) - Transpile ES2017 `async`/`await`.
- [pegjs](https://github.com/cameronhunter/rollup-plugin-pegjs) - Import PEG.js grammars as parsers.
- [purs](https://github.com/Pauan/rollup-plugin-purs) - Compile PureScript.
- [regenerator](https://github.com/noTruth/rollup-plugin-regenerator) - Replace `async` functions with ES5 Promise functions.
- [ts](https://github.com/wessberg/rollup-plugin-ts) - Transpile with Babel, TypeScript, or both, while respecting Browserslist and TypeScript declarations.
- [typescript2](https://github.com/ezolenko/rollup-plugin-typescript2) - Compile TypeScript v2.0+.

### Workflow

Plugins which affect the Rollup workflow.

- [browsersync](https://github.com/4lejandrito/rollup-plugin-browsersync) – Serves a bundle via [Browsersync](https://browsersync.io/).
- [browserify-transform](https://www.npmjs.com/package/rollup-plugin-browserify-transform) - Use Browserify transforms in a build.
- [command](https://github.com/Vehmloewff/rollup-plugin-command) - Run commands and call functions when bundles are generated.
- [conditional](https://github.com/AgronKabashi/rollup-plugin-conditional) – Conditionally execute plugins.
- [execute](https://github.com/audinue/rollup-plugin-execute) - Execute shell commands sequentially during a build.
- [html-entry](https://github.com/leogr/rollup-plugin-html-entry) – Allows use HTML Script Tags as entry points.
- [incremental](https://github.com/mprt-org/rollup-plugin-incremental) - Recompile only changed modules in watch mode.
- [jscc](https://github.com/aMarCruz/rollup-plugin-jscc) – Conditional compilation and declaration of ES6 imports.
- [make](https://github.com/btmorex/rollup-plugin-make) - Build dependency files suitable for make.
- [off-main-thread](https://github.com/surma/rollup-plugin-off-main-thread) - Use ES6 modules with Web Workers.
- [polyfill-node](https://github.com/FredKSchott/rollup-plugin-polyfill-node) - A modern Node.js polyfill.
- [sourcemaps](https://github.com/maxdavidson/rollup-plugin-sourcemaps) – Load external source maps from URIs.

## Packages

### Core Packages

Packages created and maintained by the Rollup organization.

- [@rollup/pluginutils](https://github.com/rollup/plugins/tree/master/packages/pluginutils) - Functions commonly used by Rollup plugins.

### Community Packages

- [deno-rollup](https://github.com/cmorten/deno-rollup/) - Use Rollup in [Deno](https://deno.land/) projects.
- [fruit](https://github.com/jaebradley/fruit#readme) - Build a Rollup boilerplate in seconds.
- [grunt-rollup](https://github.com/chrisprice/grunt-rollup) - Grunt plugin for Rollup
- [rollup-starter-app](https://github.com/rollup/rollup-starter-app) - Create a bare-bones application using Rollup.
- [rollup-starter-lib](https://github.com/rollup/rollup-starter-lib) - Create a bare-bones library using Rollup.
- [rollup-stream](https://github.com/permutatrix/rollup-stream) - A wrapper for streaming Rollup results.