diff --git a/README.md b/README.md
index 865b62c6b1a15e0b969d024abc5d69613abec935..babec3069d8ee7650e3bc7720cea6a082b6e9eed 100644
--- a/README.md
+++ b/README.md
@@ -50,13 +50,37 @@ web3.eth.coinbase.then(function(result){
 
 For another example see `example/index.html`.
 
+## Contribute!
+
+### Requirements
+
+* Node.js
+* npm
+* gulp (build)
+* mocha (tests)
+
+```bash
+sudo apt-get update
+sudo apt-get install nodejs
+sudo apt-get install npm
+sudo apt-get install nodejs-legacy
+sudo npm install -g gulp
+sudo npm install -g mocha
+```
+
 ## Building
 
-* `gulp build`
+```bash
+gulp
+```
 
 
 ### Testing
 
+```bash
+mocha
+```
+
 **Please note this repo is in it's early stage.**
 
 If you'd like to run a WebSocket ethereum node check out
@@ -76,4 +100,4 @@ ethereum -ws -loglevel=4
 [dep-image]: https://david-dm.org/ethereum/ethereum.js.svg
 [dep-url]: https://david-dm.org/ethereum/ethereum.js
 [dep-dev-image]: https://david-dm.org/ethereum/ethereum.js/dev-status.svg
-[dep-dev-url]: https://david-dm.org/ethereum/ethereum.js#info=devDependencies
\ No newline at end of file
+[dep-dev-url]: https://david-dm.org/ethereum/ethereum.js#info=devDependencies
diff --git a/package.json b/package.json
index fc34be487e27c8603b898e27b4487c98f1066fc9..6d032d72d46e54dd967808bb528331a3c5df9fef 100644
--- a/package.json
+++ b/package.json
@@ -25,7 +25,8 @@
     "jshint": ">=2.5.0",
     "uglifyify": "^2.6.0",
     "unreachable-branch-transform": "^0.1.0",
-    "vinyl-source-stream": "^1.0.0"
+    "vinyl-source-stream": "^1.0.0",
+    "mocha": ">=2.1.0"
   },
   "scripts": {
     "build": "gulp",