Skip to content
Efficient task automation platform for web developers
JavaScript HTML CSS
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Efficient task automation platform for web developers

Runup is a task automation platform specific for front-end web application development with a strong focus on performance. Not being general purpose is a very conscious choice because it allows for more optimization and more useful features for this specific use case.


  • Separation of development and build concerns: optimized for fast feedback during development and high quality during build.
  • Define tasks in flows, a powerful and flexible extension mechanism using standard Node.js files.
  • No need for countless runup-* plugins to glue things together, in stead writing your own flows and integrating directly with existing tools is easy.
  • Assets are processed on demand when your browser requests them and are never saved to disk. Unchanged assets are cached in memory.
  • Includes all essential infrastructure you need, working out of the box:
    • Integrated web server
    • Integrated source file watcher
    • Live browser refresh
    • Asset hashing for cache busting
  • Lightweight: efficient architecture with carefully chosen and minimal dependencies; starts in around half a second.


The wiki contains full documentation and a tutorial.


$ npm install --saveDev runup

You can add --global to install the "binary" globally, but it's usually not necessary as Runup can be easily setup through NPM scripts.


The best way is via NPM scripts:

// package.json
  "scripts": {
    "dev": "runup",
    "build": "runup build"

Then run one of:

$ npm run dev
$ npm run build
  • dev starts Runup in development mode.
  • build makes a release build.

You can off course also use the CLI directly:

$ [./node_modules/.bin/]runup [build] 

(The node_modules prefix is not needed with a --global install.)

Finally, you can also use the API.

You can’t perform that action at this time.