Wikipedia Interface for Node.js
Switch branches/tags
Clone or download
dijs Merge pull request #85 from dijs/parsing-bugfix
Using new version of parser to handle multiple infoboxes better.
Latest commit 1bd4a05 Jul 12, 2018

NPM Version Build Status Coverage Status

WikiJs is a node.js library which serves as an interface to Wikipedia (or any MediaWiki).

What can it do?

  • Search wiki articles
  • Fetch article content
  • Find all links/images/categories in a article page
  • Get parsed information about articles
  • Find articles by geographical location
  • and much more!



npm install wikijs

Build yourself

You can run these commands in order to build and test WikiJs:

git clone
cd wiki
npm install
npm run build
npm test


import wiki from 'wikijs';
// const wiki = require('wikijs').default;

	.then(page =>'alterEgo'))
	.then(console.log); // Bruce Wayne

Usage with webpack

In order for webpack to build wikijs properly, you must add an option to your webpack configuration file. Documentation

externals: {
  "isomorphic-fetch": "fetch"

Usage with other MediaWiki's

You can use the API options configuration:

	apiUrl: '',
	origin: null

Usage with other languages

You just need to change the API to the proper URL. This is normally just changing the subdomain of wikipedia.

wiki({ apiUrl: '' })
  .page('Cristiano Ronaldo')
  .then(page =>

Read more about Cross Domain Requests here

Parsing Wiki Infobox Data

The code Wikipedia uses for infobox data is strange and complex. So I have split the parsing code into another library. You can find it here. NPM Version

We not only parse out the information, but also try to transform the data into a convenient structure for data processing.


I always welcome help. Please just stick to the lint rules and write tests with each feature/fix.


Thanks to Heather van der Dys for the awesome logo!