Skip to main content

Parser for yaml/json schemas to rst

Project description

This project aims to parse JSON schemas or YAML schemas in order to create RestructuredText documentation. Using a tool like Sphinx, it is possible to create high readable documentation from the files generated, which are RST formatted text.

The outcome RST can be customized by defining a blacklist in csv and using a custom CSS file. that will inherit the Sphinx one. For the latter, an example is provided.


To create RST files from JSON schemas (or YAML) run the command:

jsonschema2rst input_folder output_folder

This command will take all JSON or YAML files in this path, sub-folders included, and wll create a new directory - removing it if already exists - where all parsed RST file will be placed.


Let’s assume you run the following command:

jsonschema2rst json_folder rst_output_folder

and also let’s assume the folder json_folder contains the file url.json, which contains the following schema:

    "title": "URL of related document",
    "properties": {
        "description": {
            "type": "string"
        "value": {
            "format": "url",
            "type": "string"
    "type": "object"

As result, jsonschema2rst will create a file called url.rst in the rst_output_folder that will contain the following rst code:

.. contents:: Table of Contents
.. section-numbering::
.. container:: section-title

.. container:: title

 URL of related document

**type** : ``object``

**Properties:** description_, value_

.. description:


**type** : ``string``

.. value:


**type** : ``string``

**format** : ``url``


In case you want to generate HTML documentation using a tool like Sphinx, we suggest you to try the custom.css file in the contribution folder to make your schemas documentation looking better. What you need is just replace the default css used by Sphinx in the file with the one proposed, then enjoy!

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for jsonschema2rst, version 0.1.4
Filename, size File type Python version Upload date Hashes
Filename, size jsonschema2rst-0.1.4-py2-none-any.whl (33.2 kB) File type Wheel Python version py2 Upload date Hashes View
Filename, size jsonschema2rst-0.1.4.tar.gz (14.3 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page