TMPMaps 2.0.0
This document explains how to set up and run the TMPMaps application based on a Single Page Web App arquitecture stack.
Single Page Web App Stack Specs
-
Yeaoman/yo: Project rapid scaffolding
-
Grunt: The Build System is used to build, preview and test your projec
-
Bower: The Package Manager is used for dependency management, so that you no longer have to manually download and manage your scripts. Bower and npm are two popular options.
-
AngularJS: is an open-source web application framework, maintained by Google and community, that assists with creating single-page applications, one-page web applications that only require HTML, CSS, and JavaScript on the client side. Its goal is to augment web applications with model–view–controller (MVC) capability, in an effort to make both development and testing easier. Angular uses the following tools additionaly:
-
Unit Testing
-
EndToEnd Testing:
-
Protractor: Protractor is a Node.js program, and runs end to end tests that are also written in JavaScript and run with node. So Protractor uses:
-
Node.js: as the execution environment
-
Karma: Test runner
-
PhantomJS: Web browser for testing simution
-
WebDriver: to control browser and simulate user interaction
-
Jasmine: for text syntax
-
-
-
Install Development environment
-
Install Node.js
-
Use npm (Node Package Manager: npm is the package manager for Node.js and comes bundled with it) to install the rest of the requiered software.
-
Bower and Grunt comes with default Node installation
-
Install Ruby (rubyinstaller)
-
Install Compass (gem install compass)
Build the Web App
Install project library dependencies (only the first time):
npm install or npm update bower install
Build the production ready Web App:
grunt
Or, the following command if Ruby and Compass not installed
Preview an app you have generated (with Livereload).
grunt serve
Run the unit tests for an app.
grunt test
Generate and run documentation
grunt docs
Generate documentation
grunt docular
Run the documentation server
grunt docular-server