http://documentup.com/kriskowal/q/
https://docs.angularjs.org/tutorial
Bootstrap
• Grunt task runner, to run the most common SCM tasks like compile Typescript, concat JS files, compile CSS, run static code analysis and report (e.g. jslint/jshint), unit testing, etc... • Bower, to manage module dependency. • QUnit is a JavaScript unit testing framework able to run on Node.js in a headless configuration or inside a browser for a graphical result presentation, being therefore suitable for both automated testing in continuous integration environments and during development for TDD processes or to debug issues. It exposes a simple API to define tests and provides support for asynchronous operations. • A number of plugins are available, including the PhantomJS runner, that provides a browser-like application context to allow testing of code intended to run in a browser.