ITISFoundation / osparc-issues

🐼 issue-only repo for the osparc project
3 stars 5 forks source link

Real time collaboration #1326

Open SCA-ZMT opened 5 months ago

SCA-ZMT commented 5 months ago

Define co-working concept that would allow multiple users to open the same project simultaneously (while allowing only one "active" user at a time to edit it, while the others observe).

WG Lead: @odeimaiz

### Tasks
- [ ] https://github.com/ITISFoundation/osparc-issues/issues/1482
- [ ] https://github.com/ITISFoundation/osparc-issues/issues/1483
- [ ] https://github.com/ITISFoundation/osparc-issues/issues/1484
- [ ] https://github.com/ITISFoundation/osparc-issues/issues/1485
- [ ] https://github.com/ITISFoundation/osparc-issues/issues/1486
- [ ] frontend services should also be lockable
- [ ] disable app mode if multiple users are in the project
- [ ] only allow to join a project if write access
- [ ] allow to enable/disable project sharing via ENV
- [ ] migration of project workbench might be very helpful
- [ ] (migration ui in separate table)
odeimaiz commented 5 months ago

For having more than one user opening the same project, some changes would have to be made in the platform.

The rocket is already, almost completely, a sharable iframe. Only those widgets that have some logic in the frontend, would miss the "sharebility":

I wouldn't make projects with other dynamic services than s4l co-workable.

odeimaiz commented 5 months ago

@mrnicegyu11

Take the chance to make it more secure. Two solutions:

odeimaiz commented 5 months ago

Use cases / Targets:

Technical gaps:

Collaboration modes:

Notes:

SCA-ZMT commented 4 months ago

Needs final decision after Uetliberg discussion.

newton1985 commented 4 months ago

Just a few comments, if I understood the vision correctly:

In summary, I don't think this needs to be a fancy feature - I would advocate not over-engineering it. The main issue is that collaborators easily and frequently lock each other out of a shared study, which can make collaboration on a study difficult to the point of infeasible. If multiple users could log in to the study simultaneously, and work on different nodes (or inspect nodes being edited by others, in an advanced version), I think this already gets 99% of the way there. Real-time chat/video/coordination etc. is cool, but definitely not required. I suspect that most of the time, one user will open the study, and leave it open for a few hours or even all day (which previously has blocked other users), so the "simultaneous" collaboration won't really be so simultaneous anyway.

@drniiken @odeimaiz