No description, website, or topics provided.
JavaScript HTML CSS Shell
Latest commit b160960 Feb 22, 2017 @vaclavbohac vaclavbohac Release v1.1.0

GoodData JS SDK

GoodData javascript sdk library mainly provides a thin javascript abstraction over the GoodData REST API. It is created to makes it easy to use the GD platform and write small javascript apps relying on GD APIs.


GoodData javascript sdk can be used as bower component. The result of the build is in dist/gooddata[.min].js. Result of the build UMD-compatible - you can use it both globally (see D3 example) and as AMD module. Note that you need to provide jQuery before trying to load sdk. In both AMD and CommonJS environment we expect jQuery library module to be named jquery.

Node JS

You can use the SDK in nodejs, but do not forget to set custom domain URL:

const gooddata = require('gooddata');


gooddata.user.login('', 'your-secret-password')
    .then(console.log, console.error);

Quick start

To build the sdk you need to have git and Node.js installed. MacOS users should install Homebrew first and then run:

$ brew install git node yarn

Now, clone this repo with $ git clone and get the library dependecies with

$ yarn install


In the repository run:

$ grunt

and the built library is ready for you at dist/gooddata.min.js


It is easy to start your own project with this repository or modify and explore examples depicting some of the sdk usages. To start with examples run:

$ grunt dev

Which starts proxy that allows your script to communicate with (backend can be changed with $ grunt dev

To run some of the examples, first you need to update credentials in the related js file. In case of d3-data-viz example you need to edit viz.js file and update user and passwd variables. Then just add the name of the example to URL like localhost:8443/d3-data-viz and you should get a nice chord chart rendered in a while.


Documentation of functions available in SDK can be found at It can be generated right from the source code by running:

$ grunt doc


Run tests with:

$ grunt test

Test coverage report can be found in coverage/ folder.


New version of library can be released with grunt release:[major|minor|patch] task. For all options see grunt-bump task.

Task is meant to be run from master branch of this repository.

Flow of release is:

  • bump version to version+1 in bower.json and package.json
  • create version commit & tag and push these to your upstream remote (so watch your remote naming)
  • create version commit & tag and push product of build (dist/*) to gooddata/bower-gooddata-js repository

Steps to publish a release:

  • you should have gooddata/gooddata-js as upstream since all tasks publish to upstream remote
  • run grunt release:{version-type} in master
  • run grunt bump-gh-pages in master
  • you're done