Show HN: Sink – Sync any directory with any device on your local network

sirbread | 80 points

> note: this is still a veeery big wip, as there are many features that I have planned to added; you can see this on the bottom of this readme.

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.

gwbas1c | 5 hours ago

Be proud you did a thing. Not everything has to optimize profits, userbase, or some other metrics. You developed something for yourself, and saw it through until it worked, and no one can take that away from you.

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.

alt187 | 9 hours ago

This is nice. Kudos for using Bonjour/Zeroconf, which I do too for everything that needs self-discovery.

rcarmo | 4 hours ago

Congrats! It's always neat to have something out there in the wild. :)

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.

MrGilbert | 12 hours ago

Haven’t looked at this yet but have been amazed at rsync for a similar task. Used it to deploy and maintain a retail digital experience across a few dozen stores more than a decade ago and it was great. Use it for small home projects now.

justinkramp | an hour ago

What is the selling point over the very mature Syncthing? I’ve been using that for this use case for many years, with the additional benefit of also being able to sync it to my server, having a UI and being in all package managers already.

dewey | 12 hours ago

As reference (for feature comparison or whatever) here are some tools I use to keep things in sync, some have already been mentioned:

  rsync - I think everybody knows this
  rclone - modern feature packed tool similar to rsync, but also more complex
  croc - a modern cross platform file transfer utility
  syncthing - sync service with web gui to keep multiple devices in sync
  LocalSend - An open source GUI tool also for mobile devices
  restic - a tool for encrypted backups with rolling hash deduplication
  immich / ente.io - Photo backup app with frontend and backend
  zfs - filesystem with send and receive
All of these are (partly) open source and free to use. Hope it helps.
sandreas | an hour ago

Most of whayt I emailed myself were links to have a look at later.

I stopped doing that after learning about the sync feature in Firefox, and the option to send tabs across devices.

kinow | 12 hours ago

[stub]

tomhow | 6 hours ago