##getting started
-
Prerequisites
-
Make sure you have registered your SSH keys with github. Here is the [link on how to set this up] (https://help.github.com/articles/generating-ssh-keys/)
-
Install Homebrew. * You can first veify you have it in the console
$ brew
* to install brew$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
* once installed, run$ brew doctor
and$ brew update
. This will check that all is good and bring down a fresh catalog of packages -
Install Node.js using homebrew with
$ brew install node
-
Install Bower using homebrew with
$ brew install bower
-
Install Grunt using npm (Node Package Manager)
$ npm install -g grunt
. The -g means globally. -
Make sure you have a code directory in your home folder
$ cd ~/
and then$ mkdir code
. For easy access in the your finder side bar$ open ~/
then drag the code folder to the sidebar so the line shows up between existing folders and let go. -
Switch to the code directory and the clone this repo
git clone git@github.com:lumiata/AngularSeedProject.git
-
Setup a new remote repo where you see fit to store your project on github
-
You should have a new folder in your code folder called AngularSeedProject. Rename this to whatever you want(e.g., fooProject)
-
Switch to this directory and run git remote delete origin
git remote remove origin
-
Add your new repo to the origin
git remote add origin git@github.com:lumiata/TomsAwesomeProject.git
(NOTE you need to put in the address of the repo you created in step 5. -
Push up this proejct to your repo
git push origin
-
Install the dependencies with
npm install
and thenbower install
-
Start the app!
grunt serve
-
Run unit\e2e tests
npm test
##unit testing
- We are using Jasmine for unit testing. Your tests belong in
test\unit\<MODULE_NAME>\*Spec.js
. They must follow the*Spec.js naming scheme
- Your services\controllers\filters code must be covered within reason.
##end to end testing
- Your directives must be end to end tested and if you are following best practices, this should be possible as they should be isolated in scope and have all dependencies injectable
##contributing
- First make sure you have read the javascript style guide. When in doubt, refer to this on issues of style.
- If you code contains 3 letter variable names, it will not be going in (Hint!)
- To help with code quality be sure your code passes the linting tests by running
$ grunt
from the command line - Test your compiled site by starting the node server, switch to ther server directory and run
node express.js
. The default port is 7003 - When you are ready to submit your pull request, push your feature branch and issue a pull request on develop. We have continuous integration on develop. Your commit messages should be prefixed with the JIRA issue number.