This document explain how to develop and build this application.
Install all dependencies
$ npm install & bower install
GruntJS is used to build application. Multiple grunt definitions is defined to build, test, serve and live-reload your application.
Allow to build application : merge, minify and test your application into build/ directory.
$ grunt
Allow to build application : merge and minify your files into build/ directory.
$ grunt build
Allow to test your application : lint and test your application.
$ grunt test
Start a mini server to test application in browser with livereload.
$ grunt serve
To contribute to development of this application, some conventions have to be used.
You can create a viewmodel using a yeoman subgenerator. It allows to create a viewmodel, its view and append it to router.
$ yo durandal:viewmodel
Viewmodels have to be placed into app/viewmodels/ folder.
Views are partial html files and have to be placed into app/views/ folder.
Assets (images, txt, xml, json, etc.) have to be placed into assets/ folder.
Styles (CSS, SASS) have to be placed into css/ and sass/ folder.
Scripts which have a common task and are included using require.js have to be placed into app/modules/ folder.
Scripts which are not included using require.js have to be placed into js/ folder.