Skip to main content

A lightweight presentation mode for JupyterLab.

Project description

jupyterlab-deck

docs install extend demo ci
rtd-badge pypi-badge
conda-badge
npm-badge binder-badge
lite-badge
ci-badge
reports-badge
cov-badge

Lightweight presentations for JupyterLab

Installing

pip install jupyterlab-deck

or

mamba install -c conda-forge jupyterlab-deck # or conda, if you must

See CONTRIBUTING.md for a development installation.

Uninstalling

pip uninstall jupyterlab-deck

or

mamba remove jupyterlab-deck # or conda if you must

Usage

Get started

After installing, open or create a Notebook.

Other documents work but are not as much fun.

Deck Mode

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.

Remote

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

Revealing JupyterLab UX Features

Many of the core JupyterLab UI elements are still available, but hidden by default. Hover over their usual places to reveal them. These include:

  • the right and left sidebar
  • the Notebook Toolbar

Hidden JupyterLab UX Features

Some elements are not visible, and cannot be revealed:

  • the Main Menu
  • the Status Bar
  • the Cell Toolbar

Next Steps:

Exiting Deck Mode

To exit Deck Mode:

Slides

Build a slideshow by changing the slideshow type per cell using the Property Inspector sidebar or the design tools.

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

Layers

Pick a layer type from:

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

Design Tools

In Deck mode, click the ellipsis icon in the bottom left corner

The design tools offer lightweight buttons to:

  • show/hide the slide layout overlay
  • set the slideshow type
  • set the layer type
  • change a few key appearance properties:
    • use the sliders to customize
      • z-index controls the vertical stacking of elements:
        • higher is "closer" to the user
      • opacity controls how vibrant the fonts and colors appear
        • higher is more full
      • zoom controls how big the contents of the cell appear
        • higher is bigger
    • un-check the checkbox to restore to the defaults

Slide Layout

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.

Moving Parts

Click and drag a part overlay to move the part underneath.

Resizing Parts

Click one of the handles in the corners of the part overlay to resize a part.

Reverting Part Move/Resize

After moving a part to a fixed position, click the button on a part overlay to restore the part to the default layout.

Configuration

Enabling Deck Mode at startup

{
  "@deathbeds/jupyterlab-deck:plugin": {
    "active": true
  }
}

Frequently Asked Questions

Does it work with notebook 6 aka classic?

No. Use RISE.

Does it work with 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.

Will it generate PowerPoint?

No. This would be a fine third-party extension which could consume notebook metadata created by this extension, jupyterlab-fonts, and nbconvert-compatible slides.

Will it generate single-document static HTML presentations?

No. Use nbconvert, but no layers or style customization will work.

For a full static viewing experience, try something like JupyterLite.

Will it generate PDF?

Not yet.

Project details


Download files

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

Source Distribution

jupyterlab_deck-0.2.0a0.tar.gz (350.8 kB view details)

Uploaded Source

Built Distribution

jupyterlab_deck-0.2.0a0-py3-none-any.whl (146.6 kB view details)

Uploaded Python 3

File details

Details for the file jupyterlab_deck-0.2.0a0.tar.gz.

File metadata

  • Download URL: jupyterlab_deck-0.2.0a0.tar.gz
  • Upload date:
  • Size: 350.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for jupyterlab_deck-0.2.0a0.tar.gz
Algorithm Hash digest
SHA256 c4fe32be636998d47160c3564f88b53dde10089db7381aafa4cc217d8d39401a
MD5 3846323cdc87e095b449bae6508629dc
BLAKE2b-256 d84c9f563fe9e08d011e6d5dbe705e75827655c3a9142dcdab9f12cdb8905d1c

See more details on using hashes here.

Provenance

File details

Details for the file jupyterlab_deck-0.2.0a0-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyterlab_deck-0.2.0a0-py3-none-any.whl
Algorithm Hash digest
SHA256 634522fc46298e185413b6fcab83af6cf18f256db2161613276d6ae0a1cb1664
MD5 f866183d2f5df6b3e3bd6b3cb9492aa7
BLAKE2b-256 31cc48bf30a86bb949fbcec282084db931c7f94edd7fab02f3c530ccb99c5451

See more details on using hashes here.

Provenance

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