Modular JavaScript Tooling.
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.
example tweaks Feb 24, 2017
packages use exact version Feb 24, 2017
.editorconfig init Feb 24, 2017
LICENSE init Feb 24, 2017
circle.yml update npm scripts Feb 24, 2017
lerna.json v2.0.0-beta.2 Feb 24, 2017
yarn.lock init Feb 24, 2017


NPM version NPM downloads Build Status donate


yarn add tooling tooling-preset-web --dev

How to use

Configure npm scripts:

  "scripts": {
    "build": "tooling build",
    "dev": "tooling dev"
  "tooling": {
    "presets": [

Populate index.js inside your project:

document.write('<h1>Hello World!<h1>')

And run yarn dev and go to http://localhost:4000.


  • tooling dev: Run dev server with hot reloading support, then you can code and open browser to preview
  • tooling build: Build app in production mode.


The surpise is, tooling requires no configurations! Oh well, there're a couple CLI options. You can run tooling --help and tooling <command> --help to check out!

However, presets may require options, then you can configure them in:

  • a package.json's tooling property
  • a JSON or YAML "rc file", eg: .toolingrc.json or .toolingrc.yml or without extension
  • a tooling.config.js CommonJS module
  • a CLI --config argument


Your app is driven by presets under the hood, just like babel is driven by babel presets.

List of presets

  • Web: A preset you'll need for modern web apps.


  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D


tooling © egoist, Released under the MIT License.
Authored and maintained by egoist with help from contributors (list). · GitHub @egoist · Twitter @rem_rin_rin