Skip to main content

Live rich content slides in jupyter notebook

Project description

IPySlides

Create interactive slides programatically in Jupyter/Voila with all kind of rich content.


Changelog

You can see upto date documentation via ipyslides.Slides().docs(), so no additional changelog is created.


Install

> pip install ipyslides
> pip install ipyslides[extra]

For development install, clone this repository and then

> cd ipyslides
> pip install -e .

How to Use

In Jupyter Notebook:

import ipyslides as isd
slides = isd.Slides()

Creating Slides

Please look at two presentations provided with Slides.docs(), Slides.demo() to see how slides are created. Moreover instruction in settings panel are at your finger tips.


Content Types to Embed

You can embed anything that you can include in Jupyter notebook like ipywidgets, HTML, PDF, Videos etc.,including jupyter notebook itself!

  • IPython Display Objects, see IPython module.
  • Plots and Other Data Types (matplotlib, plotly etc.)
  • Jupyter Interactive Widgets (ipywidgets, bqplot ect.)
  • Custom and Third Party Objects( which are not implemented in this library)
    • You can display with display command or library's specific display method.
    • You can serialize custom objects to HTML using Slides.serializer API.
  • You can extend markdown syntax using Slides.extender API. See some good extensions to add from PyMdown.

HTML/PDF Slides

  • Use slides.export_html to build static slides that you can print as well.
  • Content variety for export is limited. Widgets can not be exported unless an alternative representation is given by Slides.alt which also works to provide alternative export representation of any object.
  • Any object including widget can be replaced for export using Slides.alt function which lets you paste a screenshot of that object or it's alternative html representation at runtime or export time.
  • Paper width for printing is 10 inch (254mm) and height is determined by aspect ratio of slides.
  • Use Save as PDF in browser to make links work in ouput PDF.

Speaker Notes

  • You can turn on speaker notes with a Show Notes check in setting panel. See module Slides.notes for details or see examples in Slides.demo().

Notes is an experimantal feature, so use at your own risk. Avoid if you can.


Caveats!

  • Since Markdown is parsed using python (and we do not run notebook from outside e.g. with nbconvert), markdown cells are of no use. A better alternative is linking a markodwn file using Slides.sync_with_file and slides auto update when you save your edits. You can still write markdown in code cell with slide magic %%slide number -m to add to slides.
  • Slide number is necessary to be tracked by user in notebook, because cells are not linked to each other and multiple runs of a cell can lead to adding many slides with same content. To minimize this difficulty, use -1 in place of a slide number to add numbering automatically in Jupyter Notebook and python file! Other cell code is preserved. You may need to rerun cell if creating slides in a for loop.

Acknowledgements

  • Slides application is based on ipywidgets.
  • Rich display mechanism, and collection of cell output to slides heavily rely on IPython.
  • Python-Markdown is extensily used for content and extended where needed.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

ipyslides-4.8.7.tar.gz (118.9 kB view details)

Uploaded Source

Built Distribution

ipyslides-4.8.7-py2.py3-none-any.whl (133.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file ipyslides-4.8.7.tar.gz.

File metadata

  • Download URL: ipyslides-4.8.7.tar.gz
  • Upload date:
  • Size: 118.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for ipyslides-4.8.7.tar.gz
Algorithm Hash digest
SHA256 ebb646896f0a6d03113e6dc9d2207c92933e5ea35b19096f6628ea16cd3913b4
MD5 4fde1fd2510160d94fe95fe7f43932e5
BLAKE2b-256 95d93ec9323cbf1eab334170cef7f7bac0952174d604ab0819d52a47f2965296

See more details on using hashes here.

File details

Details for the file ipyslides-4.8.7-py2.py3-none-any.whl.

File metadata

  • Download URL: ipyslides-4.8.7-py2.py3-none-any.whl
  • Upload date:
  • Size: 133.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for ipyslides-4.8.7-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 f7aceaeb31c5bc2d194f7b2c53576399b6adde29c13f4d267f1345ec3cc274e2
MD5 b9c2b9fd883ec1b56c71498ae0a6df9a
BLAKE2b-256 55dbbc6b868bbe34d910af6f4533d624864d609826358409f5540f59fc7c2f86

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page