Thin javascript abstraction over the GoodData REST API
- For rich visualizations, please use the GoodData.UI:
- GoodData.UI Documentation
- GoodData.UI React components repository
- the Execute component for custom visualizations
- gooddata-js serves for specific background tasks, but it could be used for small applications both in the browser and in the node.js environment.
-
go to your project directory and add the package:
→ with yarn:yarn add @gooddata/gooddata-js
→ with npm:npm install --save @gooddata/gooddata-js
❗ WARNING: npm package renamed from
gooddata
to@gooddata/gooddata-js
❗ -
import the package's default export:
→ in transpiled browser app with ES6 modules syntax:import { factory } from '@gooddata/gooddata-js';
→ in node.js with CommonJS syntax:const factory = require('@gooddata/gooddata-js').factory;
-
call the API:
var gooddata = factory({ domain: 'secure.gooddata.com' }); gooddata.user.login('john.doe@example.com', 'your-secret-password') .then((response) => console.log('Login OK', response)) .catch((apiError) => console.error('Login failed', apiError, "\n\n", apiError.responseBody));
-
Please note that CORS could prevent the request. Refer to your options in GoodData.UI documentation, ie. setup local proxy or ask the GoodData platform for allowing a specific domain.
You have two options:
- download
gooddata.js
orgooddata.min.js
from the latest release - build on your own:
git clone https://github.com/gooddata/gooddata-js.git cd gooddata-js git checkout v6.0.0 # choose a version, or omit this line to use unstable code from `master` branch yarn install --pure-lockfile yarn build # get gooddata.js and gooddata.min.js from /dist folder
Then you can import the library file and global variable gooddata
contains all exported members:
<script type="text/javascript" src="gooddata.js"></script>
<script type="text/javascript">
var sdk = gooddata.factory({ domain: 'secure.gooddata.com' });
sdk.user.login('john.doe@example.com', 'your-secret-password')
</script>
We welcome any contribution in form of issues or pull requests.
Install Node.js and Yarn (for versions, see docker/.config
)
These commands may come in handy while developing:
command | description |
---|---|
yarn install --frozen-lockfile |
first step |
yarn dev |
build gooddata-js to /dist in watch mode |
yarn test |
run unit tests in watch mode |
yarn validate |
validate codestyle (tslint) |
yarn build |
build commonjs /lib and bundle files to /dist |
grunt yuidoc:compile |
build yui docs to /docs |
Do not forget to update CHANGELOG.md when contributing.
❗ Only for internal gooddata developers ❗
Package publishing is done via Jenkins Job:
https://checklist.intgdc.com/job/client-libs/job/gooddata-js-release/
To publish API documentation sdk.gooddata.com/gooddata-js/api you have to prompt following commands:
command | description |
---|---|
1. yarn build |
|
2. grunt bump-gh-pages |
Publishes documentation |
- see CHANGELOG.md
(C) 2007-2021 GoodData Corporation
For more information, please see LICENSE