This is the codebase for the rdm.openlighting.org website.
If you're intested in how PID definitions work, see https://wiki.openlighting.org/index.php/RDM_PID_Definitions
Before you upload to appengine or start developing you'll have to download some javascript dependencies. These can be downloaded using nodejs's package manager npm. The packages get downloaded using bower and grunt You have to install grunt-cli globally yourself by running either
npm install -g grunt-clior
sudo npm install -g grunt-cliand to install all the other dependencies of the project, run in the root directory of the project
npm install
grunt bowerWhich first installs the node.js dependencies (grunt, bower, karma) and then runs the grunt task for installing the bower packages
only install bower packages through grunt, because grunt moves them to static/libs and appengine and karma both expect them to be there and not in bower_components also static/libs has a different structure then bower_components.
Currently only rdm.js in static/js has a javascript unit-test using karma the unit-test is located in unit-test-js/tests/rdm.js and the karma configuration in unit-test-js/karma.conf.js the test can be run by running
grunt unit-testIt does require firefox and the dependencies to be installed to be able to run the test
The source for static/js/rdm.js is in js_src/rdm.js. however when you adjust rdm.js you have to compress it you can do this by running
grunt compressor if you are continuously adjusting the source and testing it, and you just want to automate the compressing of rdm.js run
grunt compress-watchIf you are having trouble with debugging the minified source of rdm.js you can copy the files to the static dir using
grunt copy-onceor if you want an automatic copy run
grunt copy-watchWhen you are done debugging don't forget to run
grunt copy-cleanupotherwise the files won't be compressed