Re:Edit This Blog Post
by quickthrower2 on Tuesday February 06, 2024 @10:49PM
(#39284264)
Me too. Is it in theory possible? Can you handle a “text change” kind of event then grab the inner html and send it to a server or at least chuck it in local storage. Using local storage and a download button would make the most basic wiki possible!
[ Parent
| on HN ]
ProseMirror (an excellent library IMO, though it takes a couple of hours of reading the docs to get started) has support for collaborative editing: https://prosemirror.net/examples/collab/
Something like etherpad? https://etherpad.org/
See https://etherpad.wikimedia.org/p/hello-hackernews for a real-time demo (works better with more people, I suppose!)
Absolutely! The real complexity comes from conflict resolution. If someone edits the top, and someone else edits the bottom, which version do you go with? What if they're editing the same area? Entire companies exist to provide elegant solutions to this[0], so it's no simple task.
The keywords here are operational transform (OT) and conflict-free replicated data types (CRDT). Fun to implement, there are lots of libs.
yourworldoftext is kind of in this space, although it's not traditional HTML. In it's heyday there were a lot of internal pages that were kind of like wikis
I work for XWiki SAS. Two products we develop have it:
- XWiki, a extensible wiki platform, experimentally [1] but soon to be fully supported.
- CryptPad [2], an end-to-end encrypted collaborative platform. And actually, CryptPad was accidentally born as a first attempt to have this feature in XWiki.
[1] https://extensions.xwiki.org/xwiki/bin/view/Extension/Realti...