So it looks like the clients talk to each other through AWS.
Would it be possible to use GDrive/Syncthing/Dropbox as the IPC mechanism for CRDT (e.g. store changes in a bunch of small files in a hidden folder which gets synced to other clients)?
I understand syncing would probably not be fast enough for a live cursor, but the benefit is you wouldn't have to worry about networking or accounts.
Providing Go has a decent enough client/interface into the tools you listed above, absolutely!!
The original "remote" I implemented was a single S3 bucket (no websockets, just a static file location), and if you set the synchronisation intervals to something in the realms of 10ths-1s of a second, you had near enough real time sync/collaboration!
I created a (really poorly named) abstraction called a WalFile which is basically an interface to implement these remote targets. Theoretically, you could build one for any service out there. If there was demand for one, I'd totally give it a go!
Sods law - I temporarily disabled support for the direct S3 remote yesterday because it's slightly broken. But it's a minimal amount of work away from having it functioning again.
Nice project! How was your experience using CRDTs? I often see the criticism thrown around that the history might become enormous even with regular usage. I'm curious what you have to say!
Does it support character level collaboration (like Google docs) or is this just generic entry/line level sync? IIRC CRDTs do not work well for Google-docs type text editing because they cannot capture intent well.
Minor complaint - the confirmation code email has an empty `text/plain` part which seems odd for a single line of plain text saying "Your confirmation code is XXXXXX".
Also the box to enter your code has no border which means I assumed I needed to hit the button first to get a box to type into (Dear world, please stop doing this - input boxes have borders! Otherwise how the hell do we know it's there?)
Currently I'm just using the hosted AWS Cognito offering straight out the box (just as a temporary measure to enable people to sign up). I hope to have this looking/operating a bit better down the line.
[+] [-] Evidlo|4 years ago|reply
Would it be possible to use GDrive/Syncthing/Dropbox as the IPC mechanism for CRDT (e.g. store changes in a bunch of small files in a hidden folder which gets synced to other clients)?
I understand syncing would probably not be fast enough for a live cursor, but the benefit is you wouldn't have to worry about networking or accounts.
Just an idea I've had in my head for a while.
[+] [-] sambigeara|4 years ago|reply
The original "remote" I implemented was a single S3 bucket (no websockets, just a static file location), and if you set the synchronisation intervals to something in the realms of 10ths-1s of a second, you had near enough real time sync/collaboration!
I created a (really poorly named) abstraction called a WalFile which is basically an interface to implement these remote targets. Theoretically, you could build one for any service out there. If there was demand for one, I'd totally give it a go!
Sods law - I temporarily disabled support for the direct S3 remote yesterday because it's slightly broken. But it's a minimal amount of work away from having it functioning again.
[+] [-] sambigeara|4 years ago|reply
[+] [-] benrbray|4 years ago|reply
[+] [-] ampdepolymerase|4 years ago|reply
[+] [-] al_james|4 years ago|reply
[+] [-] sambigeara|4 years ago|reply
[+] [-] zimpenfish|4 years ago|reply
Also the box to enter your code has no border which means I assumed I needed to hit the button first to get a box to type into (Dear world, please stop doing this - input boxes have borders! Otherwise how the hell do we know it's there?)
[+] [-] sambigeara|4 years ago|reply
Currently I'm just using the hosted AWS Cognito offering straight out the box (just as a temporary measure to enable people to sign up). I hope to have this looking/operating a bit better down the line.
[+] [-] Johnyma22|4 years ago|reply
[+] [-] sambigeara|4 years ago|reply
[+] [-] reyman|4 years ago|reply