FREEDOM251

Freedom251 › Build Automation Software

Broccoli

Free plan LinuxSelf-hosted

Visit Broccoli Alternatives

Broccoli's own site

What Broccoli is

Broccoli is a free, MIT-licensed asset pipeline for browser applications. It runs on Node and is backend-agnostic, with build definitions expressed in project files. A Brocfile.js exports a function that returns a tree describing the build; ES modules and CommonJS are supported. Brocfile.ts files can be parsed through ts-node, and Broccoli provides types for the build options object. Plugins generate transformed trees, with packages published under the broccoli-plugin npm keyword. The project describes constant-time rebuilds and compact build definitions. Through broccoli-cli, users can run broccoli build or broccoli serve. The Builder API builds a graph of Broccoli nodes into an artifact and returns a Promise when complete. Listed integrations include broccoli-timepiece, grunt-broccoli, and grunt-broccoli-build. The README recommends precompiling assets for web-server delivery and warns against running broccoli serve on production servers.

Who it suits

Broccoli is for developers building browser application assets with Node-based, code-defined pipelines and plugins.

What it does well

  • Free and open source
  • MIT license
  • Constant-time rebuild support
  • JavaScript and TypeScript build files
  • Programmatic Builder API

What to know first

  • Node runtime required
  • Production serving needs precompilation
  • General support uses GitHub issues
  • Plugin questions go to plugin repositories

Verdict

Broccoli provides a code-based browser asset pipeline with rebuilds, plugins, CLI commands, and a programmatic API. Its guidance separates development serving from production asset delivery.

Facts from Broccoli's own pages

Build configuration
A project can specify its build in a Brocfile.js that exports a function returning a tree. · github.com, 5 Oct 2026
Build definitions
A Brocfile.js in the project root exports a function that returns a tree describing the build. · github.com, 11 Oct 2026
Builds
It is a fast, reliable asset pipeline that supports constant-time rebuilds and compact build definitions. · github.com, 11 Oct 2026
CLI
The separate broccoli-cli package provides broccoli build and broccoli serve commands. · github.com, 11 Oct 2026
Command line
The project documents broccoli build and broccoli serve commands through broccoli-cli. · github.com, 5 Oct 2026
Integrations
The README lists broccoli-timepiece, grunt-broccoli, and grunt-broccoli-build for running Broccoli directly or through other tools. · github.com, 5 Oct 2026
Intended users
The README describes Broccoli as comparable in scope to the Rails asset pipeline and intended for browser application assets. · github.com, 11 Oct 2026
JavaScript support
Brocfile.js supports ES modules and CommonJS syntax. · github.com, 5 Oct 2026
License
Broccoli is licensed under the MIT license. · github.com, 11 Oct 2026
Plugins
Broccoli uses plugins to generate transformed trees, and the project points users to the broccoli-plugin keyword on npm to find them. · github.com, 11 Oct 2026
Programmatic API
The Builder API can build a graph of Broccoli nodes into a build artifact and returns a Promise when the build completes. · github.com, 5 Oct 2026
Programmatic use
The Builder class can build output from a graph of Broccoli nodes and returns a Promise when operations complete. · github.com, 11 Oct 2026
Purpose
Broccoli is a browser compilation library and asset pipeline for applications that run in the browser. · github.com, 11 Oct 2026
Rebuilds
The project describes Broccoli as supporting constant-time rebuilds and compact build definitions. · github.com, 5 Oct 2026
Runtime
Broccoli runs on Node and is backend-agnostic. · github.com, 11 Oct 2026
Security guidance
The project advises against running broccoli serve on a production server and recommends precompiling assets with broccoli build for a web server to serve. · github.com, 11 Oct 2026
Support
The README directs users to GitHub issues for general questions or the relevant plugin repository for plugin questions. · github.com, 11 Oct 2026
TypeScript
Broccoli supports Brocfile.ts files and provides type information for the build options object. · github.com, 11 Oct 2026
TypeScript support
A Brocfile.ts can be parsed through ts-node, and Broccoli provides types for the build options object. · github.com, 5 Oct 2026
Who it is for
The project describes itself as an asset pipeline for applications that run in the browser. · github.com, 5 Oct 2026

Where Broccoli stands on Freedom251

Look at these too