Skip to main content

jupyter-mkslides

An nbconvert custom exporter that converts Jupyter Notebooks (.ipynb) into Markdown for mkslides.

Installation

pip install jupyter-mkslides

Usage

jupyter nbconvert --to mkslides presentation.ipynb

This generates presentation.md along with presentation_files/, which contains the extracted image outputs. The generated Markdown can be fed directly to mkslides. Pass the directory containing the Markdown, not the .md file itself:

mkslides serve .
# or
mkslides build .

When mkslides is given a single .md file, it copies only its own default assets into the output site, so presentation_files/ and any other images referenced from the Markdown (e.g. <img src="photo.jpg"> in a Markdown cell) will not be found. Passing the directory copies everything in it, so keep the Markdown and its images in a dedicated slides folder rather than running mkslides from a project root (which would copy .venv and the like too).

Cell metadata handling

Each cell is converted according to its metadata.slideshow.slide_type (set via the Slideshow toolbar in Jupyter):

slide_type Result
slide --- inserted before the cell (new slide)
subslide Same as slide (---) by default; optionally -v- (see below)
fragment Appended to the previous slide
notes Prefixed with Note: and turned into speaker notes of the previous slide
skip Omitted from the output
unset / - --- inserted so that each cell becomes its own slide

Turning subslides into vertical slides

The default mkslides (reveal.js) configuration has no vertical slide separator, so subslide cells are output as regular slide breaks (---) by default. To use vertical slides, pass the option at conversion time:

jupyter nbconvert --to mkslides --MkSlidesExporter.subslide_as_vertical=True presentation.ipynb

and enable the vertical separator in your mkslides.yml:

slides:
  separator_vertical: '^\s*-v-\s*$'

Image outputs of code cells (image/png, etc.) are saved to {notebook name}_files/ by nbconvert's standard ExtractOutputPreprocessor and linked as ![png](...).

HTML outputs (DataFrame tables, etc.)

text/html outputs such as pandas/polars DataFrame tables are wrapped in a single <small> element so they fit on a slide. Any <small> tags already present in the output (polars emits one around its shape: line) are removed so the content is not shrunk twice. To keep the HTML untouched:

jupyter nbconvert --to mkslides --MkSlidesExporter.html_output_small=False presentation.ipynb

日本語版は README_ja.md を参照してください。

Release files for jupyter-mkslides 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jupyter-mkslides 0.1.2
File Size Uploaded
jupyter_mkslides-0.1.2.tar.gz 130.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jupyter-mkslides 0.1.2
File Interpreter ABI Platform
jupyter_mkslides-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 136.1 kB

Release files / jupyter_mkslides-0.1.2.tar.gz

Download URL jupyter_mkslides-0.1.2.tar.gz
Size 130.2 kB
Tags Source
SHA-256 checksum
How to use checksums
ad3f2a2ba0d49c913f22859bdc1cc41d4d59baf7fce7202919dc6788238ae6dc
BLAKE2b-256 checksum
How to use checksums
42c1b4d033d78ff4d889efa3cbb4d10bdd8404b4d7bda557ffc5c8d5fac4620d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 9, 2026.

Transparency log

Release files / jupyter_mkslides-0.1.2-py3-none-any.whl

Download URL jupyter_mkslides-0.1.2-py3-none-any.whl
Size 5.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c5e7054c499bbe740d2d0d58c15208377615cbc4299ed8faa23194cc8f3ea9c2
BLAKE2b-256 checksum
How to use checksums
13110c1a2a65b8e24f6880d8de1ef1d3b5e0806884d91b9cd9fc08453bc8c995
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 9, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page