JupyterLite Schema v0#

a schema for user-serviceable customizaton of a JupyterLite

https://jupyterlite.readthedocs.org/en/latest/reference/schema-v0.html#

JupyterLite Configuration

JupyterLite Configuration#

a user-serviceable file for customizing a JupyterLite site

properties

  • jupyter-lite-schema-version

version of the schema to which the instance conforms

type

integer

enum

0

  • jupyter-config-data

Jupyter Config Data

JupyterLab Settings Overrides#

A map of config objects keyed by @org/pkg:plugin which override the default settings. See https://jupyterlab.readthedocs.io/en/stable/user/directories.html#overridesjson

type

object

patternProperties

  • ^(@[a-z0-9-~][a-z0-9-._~]*/)?[a-z0-9-~][a-z0-9-._~]*:(.*)$

A valid configuration which must conform to the plugin’s defined schema

type

object

Jupyter Config Data#

contents of a jupyter-config-data <script>, as read by PageConfig. These well-known values may be augmented by other extensions.

properties

  • appName

The application name, as would appear in a Help menu

type

string

  • appVersion

The version of the application

type

string

  • baseUrl

base URL of this JupyterLite, must end in /, will be expanded by config-utils.js to include a leading /

type

string

pattern

.*/$

default

./

format

uri

  • appUrl

default app to load

default

./lab

A URI what doesn’t end in /

  • defaultKernelName

The name of the default kernel. If not available, the first kernel (by alphabetic ordering) will be chosen.

type

string

default

python

  • faviconUrl

browser tab icon to show

type

string

default

./lab/favicon.ico

format

uri

  • settingsOverrides

JupyterLab Settings Overrides

  • federated_extensions

type

array

default

items

A Federated Extension

  • fileTypes

JupyterLab-compatible file types for serving and storing

additionalProperties

file-type

  • fullLabextensionsUrl

path to federated extensions, a folder organized by ({:org}/){package}

default

./extensions

A URI what doesn’t end in /

  • fullMathjaxUrl

path to MathJax2 assets

type

string

default

https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js

format

uri

  • fullWebRtcSignalingUrls

WebSocket URLs to use for finding WebRTC peers. Requires jupyterlab-webrtc-docprovider.

type

array

default

wss://signaling.yjs.dev

wss://y-webrtc-signaling-eu.herokuapp.com

wss://y-webrtc-signaling-us.herokuapp.com

items

type

string

format

uri

minItems

1

  • mathjaxConfig

a valid MathJax configuration blob, a comma-delimited list of MathJax profiles

type

string

default

TeX-AMS_CHTML-full,Safe

  • fullStaticUrl

relative path to built static assets

default

./build

A URI what doesn’t end in /

  • enableMemoryStorage

enable memory storage fallback which can lose data if the page is reloaded

type

boolean

default

False

  • contentsStorageDrivers

names of the localforage driver for contents, or null for the best available

A LocalForage Driver Set

  • contentsStorageName

name used to store Jupyter contents in the browser

type

string

default

JupyterLite Storage

  • settingsStorageDrivers

names of the localforage driver for settings, or null for the best available

A LocalForage Driver Set

  • settingsStorageName

name used to store Jupyter settings in the browser

type

string

default

JupyterLite Storage

  • settingsUrl

relative path to bundled schemas

default

./build/schemas

A URI what doesn’t end in /

  • themesUrl

relative path to bundled themes

default

./build/themes

A URI what doesn’t end in /

  • licensesUrl

relative path to bundled licenses

default

./lab/api/licenses

A URI what doesn’t end in /

  • disabledExtensions

Lab extensions (or specific plugins) to disable

type

array

items

oneOf

An NPM Package Name

A JupyterLab Plugin

  • litePluginSettings

Additional configuration options for jupyterlite plugins, keyed by npm-compatible name

type

object

properties

  • @jupyterlite/pyolite-kernel-extension:kernel

pyolite-settings

additionalProperties

type

object

  • retroPage

The page corresponding the named Notebook Classic UI section

anyOf

an unknown retro page

type

string

a well-known retro page

type

string

enum

consoles, notebooks, edit, tree

  • exposeAppInBrowser

Whether to make the top-level Application instance available as window.jupyterapp

type

boolean

default

False

  • collaborative

Whether to enable collaborative editing over WebRTC. Should be paired with the ?room=<room name> URL parameter

type

boolean

default

False

pyolite-settings#

Pyodide-specific configuration values. Will be defined in another location in the future.

type

object

properties

  • pyodideUrl

The path to the main pyodide.js entry point

type

string

default

https://cdn.jsdelivr.net/pyodide/v0.20.0/full/pyodide.js

format

uri

  • disablePyPIFallback

Disable the piplite behavior of falling back to https://pypi.org/pypi/

type

boolean

default

False

  • pipliteUrls

Paths to PyPI-compatible API endpoints for wheels. If ending in all.json, assumed to be an aggregate, keyed by package name, with relative paths

type

array

default

format

uri

items

type

string

A URI what doesn’t end in /#

type

string

pattern

.*[^/]$

format

uri

A Federated Extension#

type

object

properties

  • extension

path to the extension module to load, relative to the extension’s package.json

type

string

format

uri

  • mimeExtension

path to the mime extension module to load, relative to the extension’s package.json

type

string

format

uri

  • load

path to the WebPack 5-compatible remoteEntry*.js file describing the bundle

type

string

format

uri

  • name

An NPM Package Name

  • style

path to the optional style module provided by the extension

type

string

format

uri

file-type#

description of a named contents file format, with extensions and mime types.

type

object

properties

  • name

type

string

  • mimeTypes

type

array

items

type

string

  • extensions

type

array

items

type

string

pattern

^\..+

  • fileFormat

type

string

enum

base64, text, json

An NPM Package Name#

package.json-compatible extension name, with an optional organization prefix. See https://github.com/dword-design/package-name-regex/blob/master/src/index.js

type

string

pattern

^(@[a-z0-9-~][a-z0-9-._~]*/)?[a-z0-9-~][a-z0-9-._~]*$

A JupyterLab Plugin#

a package.json-compatible extension name followed by a colon (:) and a specific plugin name

type

string

pattern

^(@[a-z0-9-~][a-z0-9-._~]*/)?[a-z0-9-~][a-z0-9-._~]*:(.*)$

A LocalForage Driver Set#

anyOf

detect

choose the best available driver

type

null

type

array

items

A LocalForage Driver

A LocalForage Driver#

choose a storage driver from any number of localForage drivers

anyOf

custom

use a custom driver added by a third-party plugin

type

string

IndexedDB

use the broadly-compatible IndexedDB key/value persistent store

type

string

enum

asyncStorage

WebSQL

use the WebSQL persistent store

type

string

enum

webSQLStorage

localStorage

use the localStorage persistent store

type

string

enum

localStorageWrapper

memory

use the memory-based, volatile store: must be enabled with enableMemoryStorage

type

string

enum

localStorageWrapper