Skip to content

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

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

Collaborative editing based on yjs #1155

Closed
hughfenghen opened this issue May 17, 2020 · 2 comments
Closed

Collaborative editing based on yjs #1155

hughfenghen opened this issue May 17, 2020 · 2 comments

Comments

@hughfenghen
Copy link

hughfenghen commented May 17, 2020

Hi, all.

Sorry, my English is very bad, so I use bilingual to avoid misunderstanding. Thanks google translate.
抱歉,我的英语非常糟糕,所以使用双语,避免误解。感谢谷歌翻译。

I used yjs + editor.js to implement a collaborative editing demo, Below is the preview.
我使用yjs + editor.js实现了一个协同编辑的demo,下面是预览图。

Kapture 2020-05-16 at 16 15 12

It is currently immature, has many bugs, and does not implement cursor synchronization.
目前它还不成熟,有很多bug,没有实现光标同步。

As you can see from the preview, the updated block will flash (Because the new block is used to replace the old block). Hope that editor.js will have a new API to improve the experience.
从预览图中看到,被更新的block会出现闪烁(因为是使用新的block替换旧的block),希望editor.js会有新的API来改善体验。

#1074 (comment)

However, at the moment we can't provide a method to update a certain block, as data passed to the Tool constructor. So to update it, we need to construct the new Block with updated data and replace the old one. I don't think this approach is the best one, so we need to design a block update flow and describe it with APIs and docs.

In addition, YUndoManager may be able to optimize the undo feature. (#518)
另外YUndoManager也许可以优化撤销功能。

Related issue: #908, #1040

@sosie-js
Copy link

sosie-js commented Sep 11, 2020

Just a thought. I am wondering if it is not possible to avoid to run a node server after discovering the mitm+worker technique
used in Streamsaver to create a relay postMessage between clients avoiding to run a node server but we have to check origin to prevent attacks. Following this idea, I fall on the promising easyXDM

@blahah
Copy link

blahah commented Feb 18, 2021

Seems like this could just work over websockets between clients with no need for a server to coordinate the collaboration. Is that what you're saying @sosie-js ?

@codex-team codex-team locked and limited conversation to collaborators Jan 17, 2022
@talyguryn talyguryn converted this issue into discussion #1892 Jan 17, 2022

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants