jupyterlab / extension-examples

JupyterLab Extensions by Examples
BSD 3-Clause "New" or "Revised" License
453 stars 167 forks source link

Add an example for creating a new `IDrive` #215

Open jtpio opened 1 year ago

jtpio commented 1 year ago

Problem

Custom drives are a powerful feature of JupyterLab that allow extensions to provide additional sources of contents.

For example:

Proposed Solution

Creating a new drive consists in implementing the Contents.IDrive interface and should not be too complex depending on where the contents get stored of course.

Maybe there should be new example showing how to do this, for example for storing notebooks and files in the browser local storage (localStorage, IndexedDB).

Additional context

jtpio commented 1 year ago

Actually even the JupyterLab does not seem to be mentioning it in the common extension points: https://jupyterlab.readthedocs.io/en/latest/extension/extension_points.html

timkpaine commented 1 year ago

Writing examples would also probably be a good opportunity to see if there's any improvements that are immediately relevant to do on the server side, this has been the main impediment of https://github.com/jpmorganchase/jupyter-fs.