jupyterlab-deck
docs | install | extend | demo | ci |
---|---|---|---|---|
[][binder] [![lite-badge]][lite] |
![ci-badge] ![reports-badge] ![cov-badge] |
[binder]: https://mybinder.org/v2/gh/deathbeds/jupyterlab-deck/HEAD?urlpath=lab/tree/examples/README.ipynb [ci-badge]: https://img.shields.io/github/actions/workflow/status/deathbeds/jupyterlab-deck/ci.yml
[reports-badge]: https://img.shields.io/github/actions/workflow/status/deathbeds/jupyterlab-deck/pages.yml?label=reports
[lite-badge]: https://raw.githubusercontent.com/jupyterlite/jupyterlite/main/docs/_static/badge-launch.svg [lite]: https://jupyterlab-deck.rtfd.io/en/stable/_static/lab/index.html?path=README.ipynb
[cov-badge]: https://codecov.io/gh/deathbeds/jupyterlab-deck/branch/main/graph/badge.svg?token=LS6ZzwKlqU
Lightweight presentations for JupyterLab
pip install jupyterlab-deck
or
mamba install -c conda-forge jupyterlab-deck # or conda, if you must
See
CONTRIBUTING.md
for a development installation.
pip uninstall jupyterlab-deck
or
mamba remove jupyterlab-deck # or conda if you must
After installing, open or create a Notebook.
Other documents work but are not as much fun.
Start Deck Mode by
- in the Notebook Toolbar, click ![deck-icon]
- open the Command Palette and run Start Deck
In Deck Mode, until you configure any slide types, all of your content should appear in a vertically-scrollable stack.
In Deck Mode, navigate with:
- the onscreen remote
- if available, up, down, left, right will be available
- these correspond to the standard keyboard shortcuts,
- →, ↓, ←, ↑
- shift+enter executes and advances
- the spacebar tries two directions:
- space = ↓, or →
- shift+space = ↑, or ←
Many of the core JupyterLab UI elements are still available, but hidden by default. Hover over their usual places to reveal them. These include:
Some elements are not visible, and cannot be revealed:
Next Steps:
- use slideshow types to customize how much of your content appears on-screen.
- use layer types to customize foreground/background behavior
- use the design tools to customize the appearance of cells
- use the slide layout tools to customize the position and size of cells
To exit Deck Mode:
- from the remote, click the ![deck-icon]
- open the Command Palette and run Stop Deck
Build a slideshow by changing the slideshow type per cell using the [Property Inspector sidebar][property-inspector] or the design tools.
[property-inspector]: https://jupyterlab.readthedocs.io/en/stable/user/interface.html#left-and-right-sidebar
type | purpose |
---|---|
- |
(default) stack underneath the previous cell |
slide |
start a new stack |
fragment |
reveal when activated |
subslide |
start a new cell stack in the optional Y axis |
skip |
hide the cell entirely |
notes |
TBD: moves this cell to the off-screen note viewer |
[deck-icon]: https://raw.githubusercontent.com/deathbeds/jupyterlab-deck/main/js/jupyterlab-deck/style/img/deck.svg
Pick a layer type from:
- the [property inspector][property-inspector]
- or the [design tools].
Layers either temporarily or permanently show content, and won't be reached by. Specifying a layer scope will override the slideshow type. Layers have one of the following scopes:
scope | relationship to slides |
---|---|
deck |
show on all current and future slide or subslides |
stack |
show until the next slide |
slide |
show until the next slide or subslide |
fragment |
only show until the next fragment |
In Deck mode, click the ellipsis icon in the bottom left corner
The design tools offer lightweight buttons to:
z-index
controls the vertical stacking of elements:
opacity
controls how vibrant the fonts and colors appear
zoom
controls how big the contents of the cell appear
After opening the design tools, click the Show Layout button
In slide layout mode, each part of the slide receives an overlay.
Moving a part manually will remove it from the default layout, and allow you to place it anywhere on the screen, but it will keep the same navigation index.
The keyboard shortcuts and remote should still function as normal.
Click and drag a part overlay to move the part underneath.
Click one of the handles in the corners of the part overlay to resize a part.
After moving a part to a fixed position, click the ↺ button on a part overlay to restore the part to the default layout.
overrides.json
][overrides].{
"@deathbeds/jupyterlab-deck:plugin": {
"active": true
}
}
[overrides]: https://jupyterlab.readthedocs.io/en/stable/user/directories.html#overrides-json
notebook 6
aka classic?No. Use RISE.
notebook 7
?Mostly. Navigating multiple documents during the same presentation will probably never work, as this is incompatible with the one-document-at-a-time design constraint of the Notebook UX. Each skip to another document will open a new browser tab, though deck should be installed.
No. This would be a fine third-party extension which could consume notebook metadata
created by this extension, jupyterlab-fonts, and nbconvert
-compatible
slides.
No. Use [nbconvert
][nbconvert], but no layers or style customization
will work.
[nbconvert]: https://nbconvert.readthedocs.io/en/latest/usage.html#reveal-js-html-slideshow
For a full static viewing experience, try something like JupyterLite.
Not yet.