it just uses your local wifi. run it on your machines, tell them to trust each other, and you're set. and if you manage to edit the same file at once, it handles the conflict and saves both copies.
for anyone who just wants to get files from point a to b without the headache. hope it makes your life a bit less annoying.
github: https://github.com/sirbread/sink binary: https://github.com/sirbread/sink/releases/tag/v0.1
I spent a decade as a lead on an industry-leading commercial sync product. Once you start working on details, tools like this can get very time consuming.
(They're also very fun to work on.)
The devil is all the corner cases, and there are a LOT of corner cases in sync; especially if you handle renames as renames. (IE, instead of treating a rename as a delete and recreate.)
My $0.02: Decide if this is a one-off project, hobby, or something you want to turn full time. Remember that what might seem like a bug, or a weekend project, could turn into a long coding journey. It's important to understand your commitment going in, because you don't want to "bite off more than you can chew."
You can find my website in my profile (and thus email) if you want to contact me and ask anything.
It's also much more stimulating to build something than ask like a pedant "why this exists when Syncthing?", so, I guess the joke's on them.
I am all for implementing something own when one is dissatisfied with the state of the art. But that's different than updating one's understanding what the state if the art is
For quickly sending a file, url, text or whatever between two devices, I usually use a selfhosted version of https://tnxfr.com (https://github.com/mustakimali/just-an-email). Thanks to a web interface, it works on almost every device.
well, aside from getting students more interested in programming, apparently.
I personally think it’s a power user tool rather than an easy to use tool. The UI can feel intimidating but is actually pretty coherent once you understand how Syncthing works.
I would compare it with Git in terms of ergonomics : a powerful tool with its own jargon that you must understand to be able to use it.
Like git, Syncthing chose to expose its internals to the user rather than hiding it behind something magic. But like git, I don’t feel like there are unnecessary complexity. Once you understand it, it’s easy to make it work because it makes sense.
It does have GUI, which I use. I wouldn't call it pretty or polished, but it works and I understand how it works and the way it works is exactly how I think syncing should work.
I've also configured it to run a GUI diff tool diffuse to easily combine changes in case of conflicts (when a file was changed on both sides since the last sync).
I wish it was a bit more modern and re-written in a modern language, but that's secondary qualities for a program.
Syncthing is great, but it does include everything and the kitchen sink. That's often great, but not always.
(The team do tend to fix those accessibility problems pretty fast. But spending a couple days a month working around a tool is not my idea of fun.)
It does have `syncthing cli ...` which -I think- lets you do everything but to call it obtuse would be an understatement.
I also recommend magic wormhole.
I stopped doing that after learning about the sync feature in Firefox, and the option to send tabs across devices.
(It is, of course, the famous Dropbox comment: https://news.ycombinator.com/item?id=8863#9224)
I guess it is funny to me that SVN/CVS was there in 2007 since I think git wasn't even invented at the time but now new people won't even know what SVN/CVS are, I only got to know them because I wanted to download a specific folder of github and some stackoverflow comment mentioned svn
Wild times! (I was 10, my preferred source control system was “eh I have a backup somewhere I think”.)
Or shall I also put the “onesmartphone” in the cupboard?
More seriously, I am mostly working like this now. I've had at least some data loss or reliability from every single sync solution I've tried so am practicing avoidance where possible.
I really want something to work but I can't find anything that does and I've tried all major ecosystems and syncthing etc.
also not sure why so many have a love affair with syncthing, id never heard of it but more diverse software in the world is a good thing imho. the more wheels reinvented the better, its fun!