Live rich content slides in jupyter notebook
Project description
IPySlides
Create Interactive Slides in Jupyter/Voila with all kind of rich content.
See PDF-Slides
Changelog
See changelog
Install
> pip install ipyslides >= 1.2.0
For development install, clone this repository and then
> cd ipyslides
> pip install -e .
Editable Demo
See a Demo Notebook at Kaggle. You can edit it yourself.
For jupyterlab >= 3, do pip install sidecar for better presenting mode.
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!
Note: Websites may refuse to load in iframe. Note: You can embed one intsnace of slides
ls1' inside other instance
ls2' usingls2.insert_after(<N>,ls1.box)
. This is very cool.
IPython Display Objects
Any object with following methods could be in write
command:
_repr_pretty_
, _repr_html_
, _repr_markdown_
, _repr_svg_
, _repr_png_
, _repr_jpeg_
, _repr_latex_
, _repr_json_
, _repr_javascript_
, _repr_pdf_
Such as IPython.display.<HTML,SVG,Markdown,Code>
etc. or third party such as plotly.graph_objects.Figure
.
Plots and Other Data Types (0.8.7+)
These objects are implemented to be writable in write
command:
matplotlib.pyplot.Figure
, altair.Chart
, pygal.Graph
, pydeck.Deck
, pandas.DataFrame
, bokeh.plotting.Figure
.
Many will be extentended in future. If an object is not implemented, use display(obj)
to show inline or use library's specific command to show in Notebook outside write
.
Interactive Widgets
Any object in ipywidgets
or libraries based on ipywidgtes
such as bqplot
,ipyvolume
,plotly's FigureWidget
can be included in iwrite
command. Text/Markdown/HTML inside iwrite
is made available through ihtml
command.
Full Screen Presentation
-
Jupyterlab 3.0+ has full screen eneabled from any view:
-
Use Voila for full screen prsentations. Your notebook remains same, it is just get run by Voila, may not work as expected.
-
Slides in Jupyter Lab are theme aware in
Inherit
theme mode, so theme of slides changes based on editor theme.
Speaker Notes (1.2.0+) (Experimental)
- You can turn on speaker notes with a
Show Notes
check in side panel. Notes can be added to slides usingls.notes
command. - Notes is an experimantal feuture, so use at your own risk. Do not share full screen, share a brwoser tab for slides and you can keep notes hidden from audience this way.
Known Limitations
- Slide number is necessary to be tracked by user, as notebook cells are not linked to each other and multiple runs of a cell can lead to adding many slides with same content.
- Bounding box of slides for screenshots should be set by user (if not in fullscreen).
Very thankful to Python-Markdown which enabled to create
write
command as well as syntax highliting.
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
Built Distribution
Hashes for ipyslides-1.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 07fdba279adf1d170b0dc70d93623ee10fe480c39a8912ce4dcee18d84a525d5 |
|
MD5 | 354e3131e5fa3e397ffaad1444473b13 |
|
BLAKE2b-256 | 59ace08017457b08113ec7475dcc8f3aa6c796cf5f9c2d1cfd7a34b0f2f08db7 |