> - let each user customize their username in collaborative > client-server connection, just as Gobby editor is doing it. Without > such feature none of the users will know who is the other user. Thanks for your suggestion! I’m thinking of grabbing some code from https://github.com/zk-phi/togetherly/ It uses different color to distinguish users. I can probably then add some way to toggle displaying full user name with some hotkey to toggle. Also need to add a list of connected users and color. I know that emacs’s make-network-process handles TLS if acting as client, but seems that the server doesn’t. Any idea? Or we could rely on some TLS proxy. > - make sure that it can be started remotely on public Internet server > through SSH client, where each of users would then connected. (Those > who start it in local network or through VPN would know how to do > it.) > > - make sure that it can also start through Tor Haven't test it. The current stuff sends S-exps over TCP, anybody knows any potential problem interacting with VPN/Tor? > - enable server to have password, so that not every user without > password can connect, just as Gobby editor is doing it. Does it have one single temporary password of a server or instead a user-password model? If it’s the former then is it reasonable to just send plain password (over TLS connection)? Then that will be quick to implement. > On Oct 5, 2020, at 12:02 AM, Jean Louis wrote: > > * Qiantan Hong [2020-10-05 03:00]: >> I’ve finished the initial work for a CRDT based >> collaborative editing Elisp package. The .el is attached. > > Proposal for crdt.el improvement, for collaborative real-time editing > in Emacs: > > - polish the code, propose it to main stream Emacs inclusion, add the > license > > - let each user customize their username in collaborative > client-server connection, just as Gobby editor is doing it. Without > such feature none of the users will know who is the other user. > > - make sure that it can be started remotely on public Internet server > through SSH client, where each of users would then connected. (Those > who start it in local network or through VPN would know how to do > it.) > > - make sure that it can also start through Tor > > - enable secure connection or any kind of other encryption of the > stream, as otherwise data is leaking, Gobby editor is using locally > generated certificates > > - enable server to have password, so that not every user without > password can connect, just as Gobby editor is doing it. > > Jean