Earlier quoted context omitted.
Not necessarily. For example I might have a few gigs of photos to send someone, and I want to send them uncompressed. I could text someone the seed or QR code for them to download the photos, but I can't send those photos (especially uncompressed, even if over RCS or WhatsApp) over text.
Wouldn’t this use your internet data, though? Isn’t the point of these tools to send locally without being limited by internet speeds and without having to use your mobile data?
Localsend: An open-source cross-platform alternative to AirDrop
271–280 of 284 posts
Re: Localsend: An open-source cross-platform alternative to AirDrop
#272Earlier quoted context omitted.
We've made the one true, and ultimate, cross platform P2P + E2EE data transfer tool out there. Both UI and CLI with complete feature parity on any device/OS, between the same user's devices and between users. https://zynk.it
iOS App 10€/month Hmm - no.
Re: Localsend: An open-source cross-platform alternative to AirDrop
#2731) require no app installs (at least beyond those you already have).
2) not require the same network
Most solutions fail one or both of these. Of course AirDrop isn't perfect (It doesn't work outside iOS so if you know any Android users you are quickly out of luck).
Re: Localsend: An open-source cross-platform alternative to AirDrop
#274Earlier quoted context omitted.
No they don’t? There are several 3p libs for it but not in std. Unless I’m blind and didn’t get the memo.
No you didn't miss. I mixed the concept, UDP broadcast similar to mDNS, yes part of net library. actual mDNS like visible in Finder and actual RFC implementation not part of standard library. What I was trying to say was easy to make "mdns-ish" with just standard lib, rush typed it and ended up like that.
1. Backoff and timer logic to not flood network.
2. Caching entries for the same reason.
3. Handling multiple network interfaces, and detecting when they changed.
Re: Localsend: An open-source cross-platform alternative to AirDrop
#275My problem is that all these alternatives require the devices to be on the same local network. One beauty of Airdrop is that it creates and handles that local network automatically under the hood (as far as I understand). So you could be out on a hike with friends and Airdrop something. The workaround I've found after switching to an Android device has been to teather my connection to my friend's device, which ends u…
https://mbarlow.github.io/thinair/ Device to device transfer, just a static github page. gh repo: https://github.com/mbarlow/thinair Creates QR codes for each device to scan for webrtc. Android to android will do an audible chirp that lets the devices know to switch from qr code mode to opening the camera to scan each others codes. Tested android to apple and working, the audio chirp doesn't get caught by apple. Just…
Re: Localsend: An open-source cross-platform alternative to AirDrop
#276The bar for entry for any of these solutions is 1) require no app installs (at least beyond those you already have). 2) not require the same network Most solutions fail one or both of these. Of course AirDrop isn't perfect (It doesn't work outside iOS so if you know any Android users you are quickly out of luck).
https://github.com/thiswillbeyourgithub/WebSend
Note that I'm currently refactoring it heavily (the code is awful currently).
Re: Localsend: An open-source cross-platform alternative to AirDrop
#277Re: Localsend: An open-source cross-platform alternative to AirDrop
#278Re: Localsend: An open-source cross-platform alternative to AirDrop
#279Earlier quoted context omitted.
No you didn't miss. I mixed the concept, UDP broadcast similar to mDNS, yes part of net library. actual mDNS like visible in Finder and actual RFC implementation not part of standard library. What I was trying to say was easy to make "mdns-ish" with just standard lib, rush typed it and ended up like that.
Yeah I implemented my own in Go because I was unhappy with the 3p ones, so that’s why I reacted. It’s surprisingly hard to get right, in particular: 1. Backoff and timer logic to not flood network. 2. Caching entries for the same reason. 3. Handling multiple network interfaces, and detecting when they changed.
for 1. i send a mutlicast of max 512 bytes on 224.0.0.167:26999 every 3 seconds 2. not really caching, just have a map of people that get discovered.
and god bless, I just rolled with this. if people will use the tool and they will complain about it, then it will be a problem for later. for me between my home devices did not notice inconveniences.
in total around 200 lines of golang.
Re: Localsend: An open-source cross-platform alternative to AirDrop
#280Hi, I am late to the party, but I was also building in this space in the last year, Basically I did a peer to peer filesystem named keibidrop: https://keibidrop.com/ I made it public last week. It does what local send does, but also via WAN. Still did not launch the mobile apps. And 1 up is that it has also a virutal filesystem that is synced both ways. repository is here: https://github.com/KeibiSoft/KeibiDrop The c…
Very interesting. With the "virtual folders" feature, doesn't this also compete with Syncthing kind of? I have actually been looking for a solution like Syncthing, where I can write and cache files offline without actually having all the files in the full synced folder on every device (just my NAS). Kind of a hybrid between a remote filesystem mount and full-on folder sync.
Here I skipped the server part. I just connect two devices.
If they both use the virtual mountpoint
MountAlice and MountBob
They get an underlying SaveAlice and SaveBob on disk.
so what gets dropped in MountAlice gets saved to SaveAlice, and appears in MountBob.
Once bob accesses it in MountBob it gets cached to SaveBob (like saved persistently to disk). But while the transfer happens a mmap is saved to disk to keep track of the segments that were transmited.
If changes happen on Alice for the file, GetAttr metadata is synced when the filehandler on Alice is released. and Bob knows to request the parts of the file that changed.
It did not go for the full-on folder sync. I went for a synced filesystem while the peers are connected.
And because ios and android do not have FUSE, i also added the option to add a file/ pull a file, that does the same thing.
So now, you can add folders/ files on android/ ios. and mount them as a filesystem on your desktop and do magic with them, and if they get changed you can export them back from the phone to the gallery or w/e files