Skip to content

A MIME-type plugin for rendering JSON output from Jupyter notebooks to HTML

License

Notifications You must be signed in to change notification settings

aeisenbarth/myst-nb-json

Repository files navigation

MyST-NB JSON

A MIME-type plugin for rendering JSON output from Jupyter notebooks to HTML


Outputs from Jupyter notebook code cells usually contain representations in one or multiple MIME types (image, text…). IPython provides multiple built-in output types, but not all of them have a representation for HTML, and fall back to a stringified version of the Python object.

This is the case for the application/json type:

It is nicely rendered in Jupyter because Jupyter includes a JSON renderer, but MyST-NB can only use IPython's built-ins which display as <IPython.core.display.JSON object>.

Jupyter Lab

Screenshot of json_dict in Jupyter

MyST-NB without plugin

Screenshot of json_dict in HTML by MyST-NB

MyST-NB with myst-nb-json plugin

Screenshot of json_dict in HTML with myst-nb-json

Implementation

This package requires (besides MyST-NB) no other dependencies. The front-end code is written in plain HTML/JavaScript, avoiding heavy dependencies and built steps.