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

Feature: collaborative editing #36

Merged
merged 7 commits into from
Nov 10, 2022
Merged

Conversation

li-xin-yi
Copy link
Collaborator

Features

On code editing:

  1. Prefer pulling contents from the collab server than database. If no data shared on the server, it initializes code from the database.
  2. See the modification on the code editor in real-time
  3. Show a cursor with unique color for different users when they are typing, move your mouse to the cursor can see the name of the editor.

image

On node creation and deletion

View the node appearing or disappearing immediately on other users' side.

On node dragging

Show the moving track and shadow the selected node in the corresponding user color

image

On node selection and resizing

Each user maintain an independent state of node selection. You can also be synced the resizing operations from other users immediately.

Data store

It only writes to the database when creating or deleting a pod. All truth about nodes are stored at the server to sync among users. Of course, you can save them by explicit button and auto saving.

@li-xin-yi li-xin-yi requested a review from lihebi November 8, 2022 07:20
Copy link
Collaborator

@lihebi lihebi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks for adding this feature!

@lihebi lihebi merged commit 767e398 into codepod-io:main Nov 10, 2022
@li-xin-yi li-xin-yi deleted the feat/collab branch December 13, 2022 22:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants