-
-
Notifications
You must be signed in to change notification settings - Fork 10
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
Idea: collaborative text editor #1
Comments
Indeed it would :-) I would be more interested in y-js as it supports more types (map, array,xml, text and richtext) beyond xep-0284. I also think it would much practical to implement a Y-js Converse connector that shared the existing Strophe XMPP connection instead of instantiating a fresh new connection with the generic y-js MUC connector. |
This got me going on an outstanding action to expose the collaborative features I added to the Pade version of Jitsi-Meet available to Converse as well. For more details, see igniterealtime/pade#72. The Converse plugin is not generic enough to be added to this repo. One of the collaborative applications is a rich text editor using Quill and WOOT. If I get some free time soon, I will try using Y-JS instead of WOOT |
As discussed here, the starting point should be a Y-js Converse connector that uses the Strophe xmpp connection object accessible from a Converse plugin. This will allow any of the existing Y-js example apps to be included in a plugin as a starting point before we tackle a usable collaborative text editor based on Quill and a collaborative diagram editor based on draw.io. |
I now have working implementation of collaborative document editing using ONLYOFFICE. I created a plugin client side in Converse and a plugin server-side in Openfire. For more details, see igniterealtime/pade#84. |
Doesn't OnlyOffice already include collaborative editing itself? What would be the benefit of this exactly? |
Exactly, no point re-inventing the wheel. All I needed to do was to extract the chat and tie OnlyOffice userids to XMPP JIDs. Converse Plugins were created to do this type of custom integration. My regulated enterprise users archive all chat for archiving. My version of Converse offers via a plugin full text search on all chats and group chats. That does not exclude internal document collaboration chats. |
Another option would be to add "widgets" to Inverse similar to how Riot.im does it, which allow embedding of iframes and such services like Etherpad and Google Sheets etc. |
Finally put together an XMPP based collaborative text editor with audio conferencing based on the defunct WebODF project work. If there is any interest, I will make a converse plugin version. |
That's awesome. Too bad the webodf library isn't in active development anylonger, but this might revive it. |
Excellent!! I will add it to my todo list. I just need to replace lib-jitsi-meet with converse.js. They both use strophe, so it should be straight forward to do. I have decided to invest time in understanding ODF like XMPP, so I might step up to fix outstanding issues with WebODF. Hopefully as you said, others might join in. I think it is worth doing. |
If you get the experimental ods Spreadsheet part working better, then I am sure there will be more interest, as other than Ethercalc (which is more or less abandoned also) there isn't a lightweight collaborative spreadsheet editor. Edit: this might be a better interface: https://github.com/myliang/x-spreadsheet And a lot of people seem to be interested in an open source Airtable alternative. |
Thanks for the link :-) |
There is actually an experimental XEP for collaborative XML editing through a MUC, see:
https://xmpp.org/extensions/xep-0284.html
Quite a bit ago there was an implementation for it, but it never really took off:
https://hg.linkmauve.fr/eldonilo/barbecue
Alternatively this framework seems to be a bit more extensive and also has an XMPP Muc connector:
https://github.com/y-js/yjs
Might be a cool plugin for ConverseJS.
The text was updated successfully, but these errors were encountered: