This application is built using AngularJS and coffeescript.
Before we continue make sure your system is running with the latest stable versions of the following packages
Getting the source
you either want to download the latest version or use git to get either our own or your fork of the project.
to get our repository
git clone https://github.com/diydrones/droneshare.git
to get your fork
git clone email@example.com:YOUR-USERNAME/droneshare.git
or finally theres a zip download of the latest version available.
To install the app you need to install the packages required for this project, the app has Node package requirements and Bower library packages.
You can find the list of npm packages inside the packages.js file.
The bower list can be found inside the bower.json
to install just do
npm install bower install grunt bower:install
Running the app
Configure your web server to the
dist folder on the app and run the build, prod or dev tasks
this will generate the files your web server needs to launch the app
To run tests you need to run the test grunt task which builds the app then runs the tests
If you are planning on debugging tests we recommend you use either the test or karma grunt tasks with the --watch option
grunt test --watch grunt karma --watch
this will leave a process running watching for changes on the test files, which speeds up testing.
A pro-tip is to launch your browser at the url specified when running the tests
Here is an example excerpt output from
Running "karma:unit" (karma) task INFO [karma]: Karma v0.12.16 server started at http://localhost:9876/ INFO [launcher]: Starting browser PhantomJS INFO [PhantomJS 1.9.7 (Mac OS X)]: Connected on socket tIC2TRlp_tzgnpb0U1mB with id 25791127
Notice the url from Karma http://localhost:9876/ open that on your browser so you can set debug breakpoints to help you debug your tests.
There are 3 ways of compiling the app depending on your needs
grunt build- will compile the app preserving individual files (when run, files will be loaded on-demand)
grunt dev- same as
gruntbut will watch for file changes and recompile on-the-fly
grunt test- will compile the app and run all unit tests
What is Coffeescript?
A note on tabs, spaces and line-endings
This project uses a http://editorconfig.org/ file to specify source formatting conventions. We encourage you to install a suitable plug-in into your text-editor of choice.