[HN Gopher] Show HN: Rustpad, a self-hosted online collaborative...
___________________________________________________________________
Show HN: Rustpad, a self-hosted online collaborative text editor
Author : ekzhang
Score : 64 points
Date : 2021-06-05 20:44 UTC (2 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| re wrote:
| FYI, https://rustpad.io breaks the back button by updating the
| URL hash to a new document every time I try to go back. Use
| location.replace() https://developer.mozilla.org/en-
| US/docs/Web/API/Location/re... or history.replaceState()
| https://developer.mozilla.org/en-US/docs/Web/API/History/rep...
| to avoid that, instead of assigning to window.location.hash.
| jdellinger wrote:
| Looks nice and clean! Also feels very snappy in two tabs.
|
| 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.
| ekzhang wrote:
| Thanks! And good catch, I'll fix that right away.
| zeotroph wrote:
| Could end-to-end encryption be added (see cryptpad), or does
| operational transformation or some other design aspect require a
| central server?
|
| 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).
| messo wrote:
| 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.
| sreeramb93 wrote:
| 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.
|
| I believe this project can become a popular opensource project.
| It is really fast.
| ekzhang wrote:
| Thanks! Operational transformation is the same technology that
| powers Google Docs. It's been studied in academia for real-time
| collaboration since the 1990s and has eventual consistency
| guarantees. See the Wikipedia article:
| https://en.wikipedia.org/wiki/Operational_transformation
|
| The Rust operational-transform library was not written by me,
| but it's listed on crates.io by spebern, and it's worked
| wonderfully so far. It seems to be a very close port of ot.js
| (https://github.com/Operational-Transformation/ot.js). The text
| transformation algorithm isn't very complicated (<700 SLOC
| including tests), but there's probably room for optimization!
| amelius wrote:
| Is this for editing Rust only? If not, why the name?
| executive wrote:
| Stuck at connecting to server on iOS Safari.
| ekzhang wrote:
| What version of iOS? It works for me on my iPhone 8 running iOS
| 14.4.2.
| luke2m wrote:
| 6S running 14.5.1 works fine.
___________________________________________________________________
(page generated 2021-06-05 23:00 UTC)