- run
npm install
- Build by running
grunt generate
- This will create a build folder. Point your browser at this to test
- Run
grunt watch
to triggergenerate
whenever you change files insrc/
- git clone seap_core into your development directory
- create a symlink between seap_core folder and the seap_core folder in the SEAP_PIP node_modules folder
- create a symlink between src/css/style.css and seap_core/src/style.css
- The master template is at
src/assessment.handlebars
. This is for building the singleindex.html
assessment page inbuild
- The data context for this template is at
assessment-data.json
. Thequestions
property is an array and is used to construct all the questions "slide"<div>
s in index.html. helpers
is where we define template helpers for the above. Eg. sluggify.js turns strings into alphanumeric slugs. Used like{{sluggify string}}
css
contains the master CSS file,style.css
This is stored in the seap_core repository which is a dependency of this project. During development symlinks can be used to test style development. When deploying the css will need to be pushed to the seap_core repository in order to be upto date.*- The applications scripts are in
js/scripts.js
. If you rungrunt generate-production
the concatenated scripts will be uglified
Staging
- We are using Travis (.travis.yml) and grunt to build test (Gruntfile.js) and deploy (deploy.sh)
- On EVERY push, pull request or merge Travis uses Grunt test task to run all _test.coffee and _test.js files in /tests
- If the tests pass, Travis commits the new build to gh-pages branch (our staging server) http://neontribe.github.io/seap_esa
Live
- When release is tagged and pushed
git tag -a v0.0.0-beta -m "description of release updates"
git push origin --tags
- Use Travis to carry out procedure as for Staging
- If tests pass, and build is successful, manually push the new build to the live site - overwriting whatever is there.
- Add release.txt to site root with tag name and datetime