FYI, <a href="https://rustpad.io" rel="nofollow">https://rustpad.io</a> breaks the back button by updating the URL hash to a new document every time I try to go back. Use location.replace() <a href="https://developer.mozilla.org/en-US/docs/Web/API/Location/replace" rel="nofollow">https://developer.mozilla.org/en-US/docs/Web/API/Location/re...</a> or history.replaceState() <a href="https://developer.mozilla.org/en-US/docs/Web/API/History/replaceState" rel="nofollow">https://developer.mozilla.org/en-US/docs/Web/API/History/rep...</a> to avoid that, instead of assigning to window.location.hash.
I really like the architectural decisions made in the project. OperationalTransform library may need some work like testcases and add more powerful constructs. Is there any theory behind it? Maybe add a link to it.<p>I believe this project can become a popular opensource project. It is really fast.
Looks nice and clean! Also feels very snappy in two tabs.<p>However, you're breaking the back button with your redirect to a unique room. Once in a room, pressing back will join a new room. History replace instead of push should be a better choice.
Thanks for making this, I have been looking for a worthy replacement of Etherpad for a long time, that is easy to use and has the option to be self-hosted.
Could end-to-end encryption be added (see cryptpad), or does operational transformation or some other design aspect require a central server?<p>What also comes to mind when editing source code is a non-browser participant which can actually run and test the code (or for other non-interactive backends, such as en external spellcheck).
Very cool! Thanks for sharing. Was binding Monaco particularly challenging?<p>I’m curious what the larger project/product is, if you are able to share.<p>I’ve used ShareDB (from @josephg in this thread) for a collaborative coding project with Jupyter as the execution backend. I just geek out seeing OT/CRDT projects in the wild :)
Really nice and lightweight!<p>Some feedback:<p>1. I was not able to change color when setting user name. (Was it some browser extension blocking it?)<p>2. I was not able to run your docker image on pi (arm). The error is: standard_init_linux.go:219: exec user process caused: exec format error<p>Works fine otherwise on other platforms.