Skip to content
Github mirror of mediawiki/extensions/JsonData - our actual code is hosted with Gerrit (please see for contributing)
JavaScript PHP CSS
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
example build: Updating mediawiki/mediawiki-codesniffer to 17.0.0 Mar 29, 2018
i18n Add missing qqq message documentation Oct 22, 2017
schemas Convert to extension registration Jun 28, 2019
.gitignore build: Add php-parallel-lint and MinusX Nov 4, 2017
.gitreview Whoops, track not trace Oct 25, 2016
Gruntfile.js build: Add php-parallel-lint and MinusX Nov 4, 2017
JsonData.hooks.php build: Updating mediawiki/mediawiki-codesniffer to 29.0.0 Jan 14, 2020
JsonSchema.php Fixed formatting on May 29, 2012
package.json build: Updating dependencies Dec 17, 2019

This is an extension which allows for form-based editing of arbitrary JSON data on-wiki. To see this in action, visit

Installation instructions for JsonData

  1. Copy the extension as "JsonData" into the extensions directory
  2. Configure the extension in LocalSettings.php. An example configuration can be found in example/LocalSettings_example.php

This should be enough to get up and running.


A few tests to try with the example configuration:

  1. Create a page "Address:Test". This is an example of a basic address book.
  2. Create a page "Data:Test". This is an example of free-form JSON editing sans schema.
  3. Copy an example schema to the wiki. Create "Schema:SimpleAddr", and copy in the contents of simpleaddr-schema.json. Surround the contents with a tag.
  4. Move your config on-wiki and make a modification a. Copy the contents of example/configexample.json to a new article called "JsonConfig:Test". Be sure to leave either or tags around the JSON data. b. Set $wgJsonDataConfigArticle = "JsonConfig:Test" in LocalSettings.php c. Edit JsonConfig:Test, changing the following values: ['tags']['address']['schema']['srctype'] from "predefined" to "article" ['tags']['address']['schema']['src'] to "Schema:SimpleAddr"
  5. Edit "Schema:SimpleAddr", adding or removing a field
  6. Create a page "Address:Test2", and note your change to the schema.
You can’t perform that action at this time.