[Jupyter Notebook] realtime collaborative editing within the same notebook

5,292 views
Skip to first unread message

nju08e...@gmail.com

unread,
Feb 5, 2017, 1:08:31 AM2/5/17
to Project Jupyter
Hi, all
   We are seeking ways for realtime collaborative editing within the same notebook (where two users have a copy of the same notebook open in separate editors and see each others updates in realtime), and collaboration around documents in a shared/social repository.
    Based on the search results, there are several ways like SageMathCloud and  Livebook , but we know the official Jupyter support for this sort of feature is still on the official Jupyter project roadmap (using Google Drive as the backbone, as project https://github.com/jupyter/jupyter-drive).  For this design, that will rely on Google drive and goole account, is there any potential plan that implement this feature within jupiter notebook itself like current Zeppelin notebook, like updates notebook contents concurrently in each notebook with any changes in any browser by any user?

 And what's more, I had another question, for that collaboration thing, is there any file permission configuration enablement within the design? for example, for some specific user who login into jupyter notebook url, just have read-only permission, which means they only had view permissions of these .ipynb files, and some other users have w/r permissions to these .ipynb files too.

JupyterHub seems a good tool for use for multiple-users of jupyter notebook, however, that's a tool for multiple servers too, when one user log into the JupyterHub, the spawner would start a fresh notebook server  mapping to this new user, still could not solve the collaboration issue of one same notebook of one same server.

So for the above two issues, is there any design plan in Jupyter project roadmap or some outside extensions aimed at those goals?


Many thanks in advance!

Best Regards
Sherry 

Brian Granger

unread,
Feb 5, 2017, 12:22:39 PM2/5/17
to Project Jupyter
On Sat, Feb 4, 2017 at 10:08 PM, <nju08e...@gmail.com> wrote:
> Hi, all
> We are seeking ways for realtime collaborative editing within the same
> notebook (where two users have a copy of the same notebook open in separate
> editors and see each others updates in realtime), and collaboration around
> documents in a shared/social repository.
> Based on the search results, there are several ways like SageMathCloud
> and Livebook , but we know the official Jupyter support for this sort of
> feature is still on the official Jupyter project roadmap (using Google Drive
> as the backbone, as project https://github.com/jupyter/jupyter-drive). For
> this design, that will rely on Google drive and goole account, is there any
> potential plan that implement this feature within jupiter notebook itself
> like current Zeppelin notebook, like updates notebook contents concurrently
> in each notebook with any changes in any browser by any user?

Yes, we are doing this work in JupyterLab. We are building these
features in a manner that will initially support Google Drive Real
Time API, but could also have other real time backends plugged into
it. Here is an initial PR with some of the work:

https://github.com/jupyterlab/jupyterlab/pull/1432

We have a full time post doc at UC Berkeley, Ian Rose, working on
these things. The real time stuff isn't quite ready for public usage,
but it is moving pretty fast at this point.

>
> And what's more, I had another question, for that collaboration thing, is
> there any file permission configuration enablement within the design? for
> example, for some specific user who login into jupyter notebook url, just
> have read-only permission, which means they only had view permissions of
> these .ipynb files, and some other users have w/r permissions to these
> .ipynb files too.

More or less yes. There are two separate questions:

1. Real-time collaboration on a document (notebook, text editor, etc.)
2. Sharing of documents

These are two related, but separate concerns and the way we are
designing things allows for both abstractions. If you use the Google
Docs API to store files, it will respect the file sharing permissions
of those files. At the same time, you can store notebooks/files on
your local system and still do real time collaboration on them.

>
> JupyterHub seems a good tool for use for multiple-users of jupyter notebook,
> however, that's a tool for multiple servers too, when one user log into the
> JupyterHub, the spawner would start a fresh notebook server mapping to this
> new user, still could not solve the collaboration issue of one same notebook
> of one same server.

At the same time we are building out an architecture in JupyterHub to
allow shared notebook servers to be started. This will be separate,
but integrate with all of the real time stuff. The reason for this is
that many users will want to use real-time collab, but won't be
running the jupyterhub.

>
> So for the above two issues, is there any design plan in Jupyter project
> roadmap or some outside extensions aimed at those goals?

:-)

I would watch this list for announcements on these fronts or follow
the progress on the jupyterlabhub repos.

Cheers,

Brian

>
> Many thanks in advance!
>
> Best Regards
> Sherry
>
> --
> You received this message because you are subscribed to the Google Groups
> "Project Jupyter" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to jupyter+u...@googlegroups.com.
> To post to this group, send email to jup...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/jupyter/c41856db-2030-4c57-9334-593d5b3af196%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.



--
Brian E. Granger
Associate Professor of Physics and Data Science
Cal Poly State University, San Luis Obispo
@ellisonbg on Twitter and GitHub
bgra...@calpoly.edu and elli...@gmail.com

nju08e...@gmail.com

unread,
Feb 6, 2017, 9:46:10 AM2/6/17
to Project Jupyter, elli...@gmail.com
Thanks Brian for your detailed explanation, we are much clear about it~

在 2017年2月6日星期一 UTC+8上午1:22:39,ellisonbg写道:

Leo Gallucci

unread,
Nov 23, 2017, 8:41:01 AM11/23/17
to Project Jupyter
What about this project https://github.com/sagemathinc/cocalc ?
Reply all
Reply to author
Forward
0 new messages