awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
rollup avatar

rollup/rollup

0
View on GitHub↗
26,288 stars·1,750 forks·JavaScript·14 viewsrollupjs.org↗

Rollup

Rollup is an ES module bundler and JavaScript module transpiler. It functions as a build tool that combines JavaScript modules into optimized files and converts modern JavaScript and JSX into various output formats for different runtime environments.

The project is distinguished by its static-analysis tree shaking engine, which removes unused code and dead exports to minimize bundle size. It also acts as a code splitting orchestrator, partitioning modules into separate chunks to optimize network requests and load times.

The tool provides a hook-based plugin system for extending build logic, transforming source code, and managing module resolution. Additional capabilities include multi-format output generation for library distribution, source map generation for debugging, and a command-line interface with file system watching.

Features

  • Module Bundling Engines - Functions as a high-performance engine for bundling ES modules into optimized production files.
  • Tree-Shaking Optimizations - Uses a static-analysis engine to remove unused exports and dead code to minimize bundle size.
  • Module Bundlers - Combines multiple JavaScript files or ES modules into optimized bundles to simplify distribution.
  • AST Transformation Tools - Provides utilities for parsing and transforming source code via abstract syntax trees for bundling and transpilation.
  • Build Plugin Architectures - Provides an extensible framework allowing custom logic to intercept and modify the build resolution pipeline.
  • Build-Time Plugin Systems - Provides a build-time plugin system that allows developers to extend the compilation pipeline with custom logic.
  • Code Splitting Strategies - Partitions application code into smaller, asynchronously loaded chunks to optimize network requests.
  • Dead Code Elimination - Uses a static-analysis tree shaking engine to identify and remove unused exports and dead code to minimize bundle size.
  • Dependency Resolution - Builds a dependency map to resolve module identifiers and locate files across the project.
  • Module Resolution - Implements algorithms to map module identifiers to file paths, supporting aliases and external dependencies.
  • JavaScript Transpilation - Transpiles modern JavaScript and JSX into target formats for broader environment compatibility.
  • Source-To-Source Transpilers - Transpiles modern JavaScript and JSX into target formats through an extensible plugin system.
  • Hook-Based Plugin Systems - Ships a hook-based plugin system that allows extending the build lifecycle with custom transformation and resolution logic.
  • Automated Frontend Optimizations - Automates frontend optimizations including code splitting and source map generation to improve load times.
  • Module Bundlers - Bundles multiple JavaScript modules and their dependencies into unified, optimized output artifacts.
  • Tree-Shaking Optimizers - Utilizes a static analysis engine to remove unused code and dead exports, minimizing bundle size.
  • Asset and File Management - Provides a unified API for writing processed code and static files to the file system during the build.
  • Code Splitting - Orchestrates the segmentation of application bundles into smaller chunks to reduce initial load times.
  • Module Format Renderers - Translates analyzed module graphs into various distribution formats like ESM or UMD for different environments.
  • Source Map Generators - Produces mapping files that link bundled code back to original source files for debugging.
  • CLI Build Executors - Provides a command line interface for triggering builds and piping data using specific input entries.
  • Content Hashing Utilities - Generates unique string identifiers based on file buffers to ensure efficient cache invalidation and asset deduplication.
  • External Module Filtering - Prevents specific dependencies from being bundled by marking them as external via strings or regular expressions.
  • CommonJS Interop - Integrates legacy CommonJS module formats into modern ES module bundling workflows.
  • File System Watchers - Implements a monitoring system to trigger re-bundling upon detection of file system changes.
  • Asset Versioning - Implements content hashing for assets to ensure efficient browser cache invalidation.
  • Library Distribution Formats - Generates bundles in various formats like ESM and UMD to ensure libraries work across different environments.
  • Module Format Configurations - Generates bundles in various module formats, such as ESM or UMD, from a single analyzed module graph.
  • Infrastructure and Automation - Module bundler for JavaScript applications.
  • Build and Bundling - ES module bundler for modern JavaScript libraries.
  • Build Tools - Next-generation ES6 module bundler.
  • Bundlers - Next-generation ES6 module bundler.
  • Module Loaders - ES6 module bundler with tree-shaking support.

Star history

Star history chart for rollup/rollupStar history chart for rollup/rollup

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Rollup

Similar open-source projects, ranked by how many features they share with Rollup.
  • rolldown/rolldownrolldown avatar

    rolldown/rolldown

    13,797View on GitHub↗

    Rolldown is a high-performance JavaScript and TypeScript module bundler written in Rust. It functions as a fast module compiler that implements a Rollup-compatible API to ensure compatibility with existing workflows and plugins while specializing in ECMAScript Module formats. The project distinguishes itself by using a Rust-based core engine and lazy compilation to reduce the time spent resolving and transforming source code. It focuses on minimizing final delivery sizes through static analysis and tree-shaking to remove unused code. The toolset covers a broad range of build capabilities, in

    Rust
    View on GitHub↗13,797
  • evanw/esbuildevanw avatar

    evanw/esbuild

    39,934View on GitHub↗

    esbuild is a high-performance JavaScript bundler and transpiler designed to transform modern web assets into production-ready code. Built with a focus on speed, it utilizes a concurrent execution model to perform parsing, linking, and code generation across multiple CPU cores. The engine handles a wide range of tasks, including TypeScript compilation, JSX transformation, and CSS bundling, while maintaining a consistent build process across diverse environments. What distinguishes the project is its architecture, which leverages memory-mapped file processing and a single-pass transformation st

    Gobundlercommonjscompiler
    View on GitHub↗39,934
  • substack/node-browserifysubstack avatar

    substack/node-browserify

    14,707View on GitHub↗

    This project is a CommonJS module bundler and resolver designed to combine interdependent JavaScript files into a single script for execution in web browsers. It functions as a Node.js JavaScript bundler that emulates server-side core modules and resolves dependencies to ensure compatibility between server-side logic and browser environments. The system features an extensible bundling pipeline and a browser-side module resolver. It provides a plugin architecture for transforming source code and a source map generator to correlate bundled output back to original files for debugging. The proje

    JavaScript
    View on GitHub↗14,707
  • parcel-bundler/parcelparcel-bundler avatar

    parcel-bundler/parcel

    44,032View on GitHub↗

    Parcel is a web application bundler designed to automate the packaging of project assets for production. It functions as a zero-configuration tool that detects dependencies and transforms source files into optimized output without requiring manual setup files. The project includes a built-in development server that supports incremental builds and hot module replacement to reflect code changes during the development cycle. The core of the system is a dependency graph resolver that maps relationships between modules to determine the structure of output bundles. This is supported by a modular as

    JavaScriptassetsbuild-toolcommonjs
    View on GitHub↗44,032
See all 30 alternatives to Rollup→

Frequently asked questions

What does rollup/rollup do?

Rollup is an ES module bundler and JavaScript module transpiler. It functions as a build tool that combines JavaScript modules into optimized files and converts modern JavaScript and JSX into various output formats for different runtime environments.

What are the main features of rollup/rollup?

The main features of rollup/rollup are: Module Bundling Engines, Tree-Shaking Optimizations, Module Bundlers, AST Transformation Tools, Build Plugin Architectures, Build-Time Plugin Systems, Code Splitting Strategies, Dead Code Elimination.

What are some open-source alternatives to rollup/rollup?

Open-source alternatives to rollup/rollup include: rolldown/rolldown — Rolldown is a high-performance JavaScript and TypeScript module bundler written in Rust. It functions as a fast module… evanw/esbuild — esbuild is a high-performance JavaScript bundler and transpiler designed to transform modern web assets into… substack/node-browserify — This project is a CommonJS module bundler and resolver designed to combine interdependent JavaScript files into a… parcel-bundler/parcel — Parcel is a web application bundler designed to automate the packaging of project assets for production. It functions… swc-project/swc — This project is a high-performance compiler written in Rust that transpiles TypeScript and ECMAScript into compatible… webpack/webpack — Webpack is a module bundler that maps project dependencies into a directed acyclic graph to transform diverse file…