A javascript tool-suite to query Wikidata and simplify its results.
npm install wikidata-sdk --save
Or see alternative installations
Node >= v6.4.0:
const wdk = require('wikidata-sdk')
Older versions: if you can't update to a recent NodeJS version, a work around is to use the bundled version:
var wdk = require('path/to/node_modules/wikidata-sdk/dist/wikidata-sdk')
A set of tools to read Wikidata from the Wikidata API. For write operations, see wikidata-edit.
Wikidata Query allows to extract all sorts of data from Wikidata by walking the graph of entities using SPARQL. SPARQL can be a weird thing at first, but the Wikidata team and community really puts lots of efforts to make things easy with a super rich Wikidata Query Help page, an awesome tool to test you queries and visualize the result, and lots of examples!
- Get JSON from a SPARQL query
- Simplify results
- Pre-baked queries
Context
This library had for primary purpose to serve the needs of the inventaire project but extending its capabilities to other needs it totally possible: feel welcome to post your suggestions as issues or pull requests!
Design constraints
wikidata-sdk
should stay "small" and dependency-free, so that a web application can include it in its bundle without paying a too high cost for it. A consequence is that the lib generates URLs where other libs would integrate doing the request and parsing it's response. But that actually feels quite right to do this way: simply generating the URLs let's users free to handle requests as they like (with callbacks, promises, async/await, whatever!)- Therefore, it should focus on providing basic, general helper functions most application working with Wikidata would need.
- Edition operations should go into wikidata-edit as it involves working with Wikidata credentials/tokens.
- General command-line interface tools should go to wikidata-cli, very specific ones —
wikidata-filter
,import-wikidata-dump-to-couchdb
, and alikes — should get their own modules.
We are developing and maintaining tools to work with Wikidata from NodeJS, the browser, or simply the command line, with quality and ease of use at heart. Any donation will be interpreted as a "please keep going, your work is very much needed and awesome. PS: love". Donate
- wikidata-edit: Edit Wikidata from NodeJS
- wikidata-cli: The command-line interface to Wikidata
- wikidata-filter: A command-line tool to filter a Wikidata dump by claim
- wikidata-subset-search-engine: Tools to setup an ElasticSearch instance fed with subsets of Wikidata
- wikidata-taxonomy: Command-line tool to extract taxonomies from Wikidata
- import-wikidata-dump-to-couchdb: Import a subset or a full Wikidata dump into a CouchDB database
- Other Wikidata external tools
Do you know inventaire.io? It's a web app to share books with your friends, built on top of Wikidata! And its libre software too.