Backend for Kazak-Android (or is Kazak-Android the frontend for Kazak-backend?)
Clone this repo on your machine:
$ git clone https://github.com/frapontillo/kazak-backend.git && cd kazak-backend
- Create a new Firebase application and copy its URL (e.g.
https://your-kazak.firebaseio.com
) - Go to Admin -> Secrets and generate/copy a custom session token
Create a config.json
file using config.json.example
as a template and
replace the dummy url
and secret
with the actual ones you got before.
Then, install node
and, in the application root directory, its dependencies:
$ brew install node
$ cd kazak-backend
$ npm install
There is a set of hardcoded data in bootstrap folder. To import them run
node bootstrap.js
Thereafter, you can add/edit data via the firebase console.
To run, simply execute:
$ gulp
You can run tests in multiple modes:
- one-shot on demand:
gulp test
- continuous test by file watching:
gulp test:auto
You can also run a code coverage task via gulp coverage
, that will output under coverage/
:
cobertura/coverage.xml
, XML output for the Jenkins Cobertura pluginhtml/**/*.*
, website with a nice view of covered LOCsjson/coverage.json
, line-by-line coverage detailslcov/coverage.lcov
, coverage output in the LCOV formattext/coverage.txt
andtext/coverage-summary.txt
, textual summaries
In order to make the application run on Heroku, you need to set the following environment variables:
$ heroku config:set FIREBASE_URL=https://your-kazak.firebaseio.com/
$ heroku config:set FIREBASE_SECRET_KEY=the-firebase-secret
TODO: write tutorial for Compute Engine/kubectl.
Kazak is licenced under the MIT licence, unless explicitly stated.
The MIT License (MIT)
Copyright (c) 2015 The Kazak Contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
This app couldn't exist without the awesome work of its core team of contributors and everybody that has helped the project.
We want to thank the following companies for contributing to the development by providing access to their technologies and resources: