Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow using the collaboration drive with the default JupyterLab file browser #112

Open
jtpio opened this issue Feb 28, 2023 · 3 comments
Open
Labels
enhancement New feature or request

Comments

@jtpio
Copy link
Member

jtpio commented Feb 28, 2023

Problem

Currently it looks like the collaboration-extension disables the default file browser here:

https://github.com/jupyterlab/jupyter_collaboration/blob/d8481ce01934a671e5da049f31062bbbb6bccd56/packages/collaboration-extension/package.json#L91-L93

And provides its own IDefaultFileBrowser here:

https://github.com/jupyterlab/jupyter_collaboration/blob/d8481ce01934a671e5da049f31062bbbb6bccd56/packages/collaboration-extension/src/filebrowser.ts#L29

It's a good way to seamlessly enable RTC for those that have the jupyter-collaboration package installed.

However I'm wondering if it would be possible to allow using both without disabling the default file browser by default.

Proposed Solution

In some situation we might want to be able to use both the default file browser from JupyterLab and the collaboration drive side by side.

Thinking this will probably be the case for JupyterLite that would still use the default file browser for storing content in the browser storage, but could use the collaboration drive for enabling RTC on a subset of documents (and keep things clearly separated).

Additional context

@jtpio jtpio added the enhancement New feature or request label Feb 28, 2023
@jtpio
Copy link
Member Author

jtpio commented Feb 28, 2023

In some situation we might want to be able to use both the default file browser from JupyterLab and the collaboration drive side by side.

This would concretely mean two entries in the left area: one for the default file browser and the other one for the RTC drive.

@hbcarlos
Copy link
Member

Hi @jtpio! Thanks for opening this issue.

However I'm wondering if it would be possible to allow using both without disabling the default file browser by default.

The idea of replacing the default file browser was to allow file browser extensions to work with RTC. If we create a new file browser, the extensions that modify and improve the file browser won't work with RTC. They will apply only to the default file browser.

Thinking this will probably be the case for JupyterLite that would still use the default file browser for storing content in the browser storage, but could use the collaboration drive for enabling RTC on a subset of documents (and keep things clearly separated).

I already did some experiments with JupyterLite here. As shown by @bollwyvl with the JupyterLab-webrtc-docprovider, JupyterLite is a particular case for RTC, and this extension (Jupyter-collaboration) won't work.

My idea was to modify JupyterLab-webrtc-docprovider to create an extension that provides a new default file browser with a collaborative IDrive based on WebRTC. This way, JupyterLite will benefit from file browser extensions and Jupyter-collaboration.

Conversely, we can reuse the @jupyter/collaboration package in JupyterLab-webrtc-docprovider to bring the collaborative features to JupyterLite as well.

@jtpio
Copy link
Member Author

jtpio commented Feb 28, 2023

we can reuse the @jupyter/collaboration package

Right that makes sense if most of the logic is in the @jupyter/collaboration package 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants