From 9f81701b43d8a3caec67e5b59031ef481c84596c Mon Sep 17 00:00:00 2001
From: legodude17 <legodudejb@gmail.com>
Date: Sat, 30 Jul 2016 10:34:34 -0700
Subject: [PATCH 1/3] Create file, edit .npmignore

---
 .npmignore   | 1 +
 build-all.js | 0
 2 files changed, 1 insertion(+)
 create mode 100644 build-all.js

diff --git a/.npmignore b/.npmignore
index db0875f..0a2f71c 100644
--- a/.npmignore
+++ b/.npmignore
@@ -1,3 +1,4 @@
 .gitignore
 node_modules
 contrib
+build-all.js
\ No newline at end of file
diff --git a/build-all.js b/build-all.js
new file mode 100644
index 0000000..e69de29

From f6e5d6d6098a22a0975bf2192c19c74d955198c8 Mon Sep 17 00:00:00 2001
From: legodude17 <legodudejb@gmail.com>
Date: Sat, 30 Jul 2016 11:00:43 -0700
Subject: [PATCH 2/3] It works :)

---
 build-all.js | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)
 mode change 100644 => 100755 build-all.js

diff --git a/build-all.js b/build-all.js
old mode 100644
new mode 100755
index e69de29..fe6acda
--- a/build-all.js
+++ b/build-all.js
@@ -0,0 +1,33 @@
+#!/usr/bin/env node
+
+var exec = require('child_process').exec,
+    ASQ = require('.'),
+    commands = ['npm install', function $$cd(done) {
+      process.chdir('contrib');
+      done();
+    }, 'npm install', function $$chdir(done) {
+      process.chdir('..');
+      done();
+    }],
+    queue = commands.map(function $$map(v, i) {
+      return function $$run(done) {
+        console.log('Running step #' + (i + 1));
+        if (typeof v == 'function') {
+          console.log('Running function in', process.cwd() + '.');
+          v(done);
+        } else {
+          console.log('Running', v, 'in', process.cwd() + '.');
+          exec(v, {cwd: process.cwd()}, done.errfcb);
+        }
+      };
+    });
+var seq = ASQ(function (done) {
+  console.log('*** Starting Build ***');
+  done();
+});
+queue.forEach(function (v, i) {
+  seq.then(v);
+});
+seq.val(function () {
+  console.log('*** Finishing Build ***');
+});
\ No newline at end of file

From aa1f0ef98e64a9ad24cc2266b4b8cfdfa0e6cb21 Mon Sep 17 00:00:00 2001
From: legodude17 <legodudejb@gmail.com>
Date: Sat, 30 Jul 2016 13:50:49 -0700
Subject: [PATCH 3/3] Update README.md

---
 README.md | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/README.md b/README.md
index f2da1da..865bcf0 100644
--- a/README.md
+++ b/README.md
@@ -594,6 +594,30 @@ However, the recommended way to invoke this utility is via npm:
 npm run-script build-core
 ```
 
+You can bundle the contrib with the included utility:
+```
+./contrib/bundle.js
+```
+You can read more about this in the [contrib](https://github.com/getify/asynquence/tree/master/contrib#readme).
+
+If you got this repo from github you can run the other utility:
+```
+./build-all.js
+```
+This will actually run `npm install`. Only run this as soon as you get it or if you edit the deps.
+## Contributing
+
+You can start contributing by cloning this repo:
+```
+git clone https://github.com/getify/asynquence.git
+cd asynquence
+```
+Then run:
+```
+./build-all.js
+npm test
+```
+Then change things, refer to the [above](#builds) for how to build it.
 ## License
 
 The code and all the documentation are released under the MIT license.