This repository is the frontend to the RAPTIDE web tool. If you are looking for the backend repository then click here.
For a short demo of the working product see our YouTube Demo
The demo follows a similar process to this tutorial. After loading the website:
This architecture document outlines the structure of both parts of the RAPTIDE program.
Author: Daniel Parker
Install nginx, nodejs, ruby and ruby-compass
sudo apt-get install <package-name>
Install nodejs libraries: karma-jasmine, connect-modrewrite, grunt-cli, and yeoman
sudo npm install -g <package-name>
Configure nginx directory ownership and group. (Replace <username> with your linux username)
sudo chgrp -R www-data /usr/share/nginx/html
sudo chown -R <username> /usr/share/nginx/html
Fix the nginx web root and enable single page websites
Open the default nginx site configuration
gksu gedit /etc/nginx/sites-available/default
Find the line root /usr/share/nginx/html;
and replace it with root /usr/share/nginx/html/dist;
Find the line try_files $uri $uri/ /index.html;
and replace it with try_files $uri /index.html;
Save the file and exit gedit.
Restart nginx
sudo service nginx restart
*Optional but recommended: Create a symbolic link to the nginx web root in your documents
ln -s /usr/share/nginx/html ~/Documents/html
Pull the SSD2-Frontend repository to the html root
cd ~/Documents/html && git init && git remote add origin https://github.com/rlgod/SSD2-Frontend.git && git pull origin master
Install Bower Dependencies
bower install
Install project dependencies
npm install
If this step fails then delete the node_modules
directory in the project root and execute the above command again
Build the web application
grunt build
This standard for code review is intended to improve both source code quality and also the cross-developer awareness. All development team members must follow this code review process and ensure that the process is followed at all times.
“Review - 12345”
.Author: <Developer Name> - <Developer Username>
Summary: <Summary of feature / changes to feature. ~ 2 Paragraphs>
Commits: <List of commits to review copied from ‘git log --pretty=oneline --abbrev-commit abcdefg..’ including the trailing dots to list all commits since abcdefg, or alternatively ‘git log --pretty=oneline --abbrev-commit abcdefg..hijklmnop’ for the log between two commits>
Author: Daniel Parker - rlgod
Summary: Implemented feature ‘A’ to satisfy the following requirements…
etc.
Commits:
67898aa remove strict against null test
b8c028e Merge pull request #141 from Rovak/grunt/watchtask
81920bd moved building source to separate task to speed up build cycles
01110ec trigger build when source changes
32b973f added grunt-contrib-watch dependency
516f7dd jshint warnings
09573e1 trailing spaces
Author: Zakariah Chitty
Keywords are words that classify the change being made. These appear at the beginning of a commit message.
Changes that are related to documentation.
Rules: Doc must only be used in conjunction with another keyword. The two keywords are hyphenated together (e.g., Doc-New, Doc-Enhance).
Examples:
67898aa DOC-NEW: Architecture design document for module X.
b8c028e DOC-ENHANCE: Added a class diagram outlining characteristic Y to the architecture design document for Module X.
Changes related to addressing issues, defects and/ or bugs.
Rules: If the fix is related to a documented issue, this should be referenced in the commit message. Otherwise if the fix had not been previously documented then it should be described to a level of detail that is suitable for the given context.
Example:
FIXED: Addressed issue #7 bug found in Module X.
Creating a new feature that did not already exist. This can also relate to doing basic plumbing.
Example:
NEW: Module X class to achieve feature Y
NEW: Screen to display information Z.
Updating or improving a feature, or aspect of the code that is not looks, performance based or a fix.
Example:
ENHANCED: Module X to perform feature Y.
Non functional changes, i.e., prettifying. This will typically relate to the UI. Example:
LOOKS: Screen X now displays information Y in a cleaner way.
Improving execution rates of existing features.
Example:
PERFORMANCE: Improvement for Module X when doing task X.
Changes can be related to the artifacts in a generic way (e.g., Fixed spelling mistakes in the UI on screen X) or if necessary changes can be related to artifacts at a file level (e.g., Commented File X to conform with commenting standards). It is up to the author to decide what is appropriate in a given scenario.