# Get NPM dependencies:
npm install
# Install global NPM dependencies:
npm -g install bower
npm -g install gulp
npm -g install karma
# Also to be able to run tests from CLI
# without browser window popping consider
# to install PhantomJS:
# http://phantomjs.org/download.html
# Get Ruby dependencies required to compile styles from Sass:
bundle install
Gulp flows
To make development faster and more automated there are several Gulp tasks available:
-
gulpBuilds project into
builddirectory. Under the hood compiles and compresses Sass/CSS, compiles scripts with (RequireJs) and uglifies it. -
gulp bump-versionWorks with gitglow releases. E.g. when you’re on
release/0.4.4branch it will update cache beaters to follow version. -
gulp karmaStarts Karma server watching scripts updates.
-
gulp karma-ciRuns tests against the build (which should be run first) and quits, is good to use in CI scenarios.
-
gulp protractorRuns E2E tests against source files.
-
gulp protractor-ciRuns E2E tests against the build.
-
gulp sassCompiles Sass project, feeds output to Autoprefixer and minifies it via CSSO.
-
gulp watchListens to changes to stylesheets and scripts and reloads browser page during development.
-
bower installTo update all the dependencies to the latest compatible versions.
Tests use Jasmin for assertions.
Protractor is used to provide way to do E2E tests. To install go to client
directory and run:
npm install -g protractor
// This installs Selenium standalone
// server and Chrome driver:
webdriver-manager update
// Start the server with:
gulp webdriver
// To test source:
gulp protractor
Check p.conf and p-compiled.conf for Protractor settings.
Checkout Protractor docs for more information.
You can checkout planned new features on the Trello Board. Also feel free to create feature requests on github issues.