This repository contains the GUI for the Wikidata Query Service.
Please see more details about the service in the User Manual.
Clone git repo, go into created folder and then pull all dependencies via npm package manager.
$ git clone https://gerrit.wikimedia.org/r/wikidata/query/gui
$ cd gui
$ npm install
Alternatively, use npm install
.
npm install wikidata-query-gui
Per default the Wikibase Query Service GUI is configured to be used as a local development test instance. It can be customized by creating a custom-config.json
in the repository's root dir. This file can be used to override any of the default settings obtained from default-config.json
.
Run JSHint, JSCS and QUnit tests.
$ npm test
Start a test server for local debugging. Do not use it in production.
$ npm start
Create a build with bundled and minified files.
$ npm run build
Create a build and push it to the deployment branch via git review.
$ npm run deploy
Please make sure you have defined a gitreview username:
git config --global --add gitreview.username "[username]"
A CodeMirror based SPARQL editor with code completion (ctrl+space) and tooltips (hover).
var editor = new wikibase.queryService.ui.editor.Editor();
editor.fromTextArea( $( '.editor' )[0] );
See examples/editor.html
.
A dialog that allows browsing of SPARQL examples.
new wikibase.queryService.ui.dialog.QueryExampleDialog( $element, querySamplesApi, callback, previewUrl );
See examples/dialog.html
.
var api = new wikibase.queryService.api.Sparql();
api.query( query ).done( function() {
var json = JSON.parse( api.getResultAsJson() );
} );
See examples/sparql.html
.
JSFiddle.net
Views that allow rendering SPARQL results (see documentation).
var api = new wikibase.queryService.api.Sparql();
api.query( query ).done(function() {
var result = new wikibase.queryService.ui.resultBrowser.CoordinateResultBrowser();
result.setResult( api.getResultRawData() );
result.draw( element );
} );
See examples/result.html
.
JSFiddle.net
Unfortunately there are no releases and the provided code and interfaces are not considered to be stable. Also the dist/ folder contains a build that may not reflect the current code on master branch.