rtc
rtc copied to clipboard
Real Time Collaboration for Jupyter and beyond
JupyterLab Real Time Collaboration 
This Real Time Collaboration (RTC) monorepo contains work on real-time collaboration for use in JupyterLab solely.
- The current focus is on using the CRDT Y.js library. The development is being done in jupyter-rtc/jupyterlab repository and aims to be merged in the upstream JupyterLab repository.
- This repository contains works done with the Lumino and Automerge CRDT libraries.
For Jupyter cross-components (JupyterLab / Jupyter Server / JupyterHub) RTC implementations, please go to the dedicated repositories hosted in jupyter-rtc GitHub organisation.
Docs
General considerations around CRDT are available on https://jupyterlab-rtc.readthedocs.io.
Project Meetings
We have a bi-weekly
meeting call. Please come and join on Zoom. All are welcome to come and just listen or discuss any work related to this project. For the time, place and notes, see this HackMD. We also use the same HackMD to set an agenda and to capture notes for these meetings (see jupyterlab/rtc#3 for the historical notes). Some meetings have been recorded and are available on this YouTube playlist.
Learning Pathway
We are striving to keep meetings productive and on topic. If you are joining us for the first time or need a refresher about the project's scope, we recommend reading the following documents.
- The Specifications: We are working on creating living specifications for the protocol(s) created here. We're doing our best but it may not always be totally in sync with explorations in the repo, until they are settled on.
- The Design document.
- The Architecture document.
- Vision as explained in the Grant Proposal for CZI.
Contribute
The contribute page contains more specific information. To develop on the source code, start with the instructions for the examples. We welcome any and all contributions and ideas here! This is a big task and we will need as much help as we can get.