BEP proto by its own is not a complex thing. Implementing of “cluster model” part in a correct, reliable and fast way – that’s the most challenging part.
Yeah, I am leaving out the cluster model part for now.. main goal is to have a very simple and lightweight way to access your syncthing network without having to think about storage space etc… simply kind of similar to what e.g. an app like dropbox mobile does for you. And no synchronization of local state. An App that “my grandparents” would be able to use …
The second goal is to provide an implementation of the syncthing protocol in typescript. Just to play around with it. E.g. one might be able to use it to integrate p2p storage solutions into webpages using websockets and similar things. But its very experimental of course
yeah… I don’t know mountainduck.. but from a brief look at it, it looks like a FUSE file system kind of thing.
And you are totally right, yes.. One idea behind syncpeer was to be able to mount syncthing folders as remote filesystems as disks/folders without synchronization. Thats why in the project, the protocol is implemented as a simple library. This way its possible to integrate it with FUSE libraries to achieve that. The synchronization part is already done really well by syncthing itself…
I do find it always nice people dig into technology very deep for personal fun and profit. But reimplementation of a protocol and all functionality should not be taken lightly. We have to start somewhere . Good luck with the project