Skip to main content

A JupyterLab extension.

Project description

jupyterlab_twitch

Github Actions Status

A JupyterLab extension to display Twitch inline. It provides both a Twitch widget that can be displayed and modified via code, and a standalone Twitch player.

The goals of the project are to build out a method that allows for students to watch live streaming coding sessions and interact with an instructor from within their Jupyerlab. At present, it allows for embedding chat and video, but future developments will include deeper integration with chat using twitch-js.

Requirements

  • JupyterLab >= 2.0

Install

jupyter labextension install @data-exp-lab/jupyterlab-twitch

Usage

You can either use the "Twitch" option in the command palette, which will prompt you for a Channel, or you can import and use the Twitch widget. Using the Twitch widget is preferred for most things, but it is also somewhat harder to move around.

import jupyterlab_twitch
player = jupyterlab_twitch.TwitchPlayerModel()
player.channel = "mst3k"
player.volume = 0.9
display(player)

Only a few attributes are exposed on the TwitchPlayerModel, and it will likely change its name as chat and other features are added. Right now you can change the channel, the volume, and mute or unmute. You can create a new output for the Twitch stream and drag that around, and you can also have multiple going.

This uses the IFrame embedding library, so may not work on non-localhost domains.

Style for the widget-based viewer is still a bit clunky, and will be worked on in subsequent versions.

Contributing

Install

The jlpm command is JupyterLab's pinned version of yarn that is installed with JupyterLab. You may use yarn or npm in lieu of jlpm below.

# Clone the repo to your local environment
# Move to jupyterlab_twitch directory

# Install dependencies
jlpm
# Build Typescript source
jlpm build
# Link your development version of the extension with JupyterLab
jupyter labextension link .
# Rebuild Typescript source after making changes
jlpm build
# Rebuild JupyterLab after making any changes
jupyter lab build

You can watch the source directory and run JupyterLab in watch mode to watch for changes in the extension's source and automatically rebuild the extension and application.

# Watch the source directory in another terminal tab
jlpm watch
# Run jupyterlab in watch mode in one terminal tab
jupyter lab --watch

Uninstall

jupyter labextension uninstall @data-exp-lab/jupyterlab-twitch

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_twitch-0.2.0.tar.gz (158.0 kB view details)

Uploaded Source

Built Distribution

jupyterlab_twitch-0.2.0-py3-none-any.whl (161.0 kB view details)

Uploaded Python 3

File details

Details for the file jupyterlab_twitch-0.2.0.tar.gz.

File metadata

  • Download URL: jupyterlab_twitch-0.2.0.tar.gz
  • Upload date:
  • Size: 158.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.6

File hashes

Hashes for jupyterlab_twitch-0.2.0.tar.gz
Algorithm Hash digest
SHA256 7bfc7071afb58ee9aff3ba36d14e4a56f72b80ad81ecde586378bb69e7b81061
MD5 d2c80ea497c383a9805af371e32086a4
BLAKE2b-256 a3071b7e39cc2f6e840607681151b406c7349363fff5760d101151292cb846e7

See more details on using hashes here.

File details

Details for the file jupyterlab_twitch-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: jupyterlab_twitch-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 161.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.6

File hashes

Hashes for jupyterlab_twitch-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e5538a44a1f5bce657fa65d079cbb24130e71a1ca4b6f2427cc21fa20abc4cbc
MD5 885148c6086d89be2daf26f03ed8bbd5
BLAKE2b-256 0e9284383c0c4719261a2ceed940817f52f2a2ae53c47438f1e23ee158f7419a

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