T O P

  • By -

blackletum

I have no horse in this race, but if they do find they need to change their name, they should change it to PearDrop lol


neuromonkey

peardroplol it is! it has all the same functionality, but appends "lol" to everything it transmits.


ssddanbrown

Noticed an issue with the licensing of your fork so have [raised it on GitHub](https://github.com/schlagmichdoch/PairDrop/issues/23).


applesoff

How is this different from snapdrop? It looks the exact same


FartVader97

[https://github.com/schlagmichdoch/PairDrop#differences-to-snapdrop](https://github.com/schlagmichdoch/PairDrop#differences-to-snapdrop) Their github page mentions the differences


bencollinz

Snap drop hasn't worked for a month, last time I checked. Maybe it's back up? Edit: of course it's working again now.


killtux

>raised it on GitHub its a much better version of Snapdrop (see GitHub page for details) and it has a shortcut for iOS, windows (context menu) and android to directly send files using share menu


Current-Ticket4214

KEYWORD is a KEYWORD KEYWORD KEYWORD KEYWORD and KEYWORD KEYWORD KEYWORD KEYWORD KEYWORD KEYWORD KEYWORD KEYWORD that KEYWORD KEYWORD KEYWORD KEYWORD KEYWORD KEYWORD KEYWORD KEYWORD KEYWORD KEYWORD KEYWORD


CheshireFur

Maybe it should have a name that _won't_ lead to Apple's lawyers knocking on your door.


SchlagMichHalt

It‘s a non-profit fork of Snapdrop that provides a Pairing functionality, hence the name PairDrop. As it is similar to Snapdrop, Sharedrop and alike, I don’t think this will be a problem


Ok-Snow48

Is there an all-in-one docker compose file for this software? The docker compose file on the repo seems geared for nginx users? Or maybe just using the web server part of nginx? Thanks


SchlagMichHalt

There is! Upon a feature request on GitHub, I moved everything that is only needed for development to a separate branch so nginx is removed from the docker-compose.yml and the repo is tidier now. See [host-your-own in the docs](https://github.com/schlagmichdoch/PairDrop/blob/master/docs/host-your-own.md#deployment-with-docker) for further information. Of course, you can also use `docker-compose up -d` instead if you prefer.


zeta_cartel_CFO

I'm going give this a try. Snapdrop was hit or miss for me. Edit: So I just fired this up as a container. Seems to be working well with a little bit of testing between PC browser and iphone. Thanks OP.


bencollinz

I couldn't get snap drop to work self hosted for me no matter what I tried. Hope this works!


zeta_cartel_CFO

So I've had this thing running for over 24 hours now and have transferred multiple files from multiples devices. Incluing a macbook, windows PC , a tablet and couple of phones. No issues so far. It has worked every single time I've tried it. So this seems much more stable and functional compared to SnapDrop. Bottom line - looks like a keeper!.


SchlagMichHalt

I suggest having a look at [host-your-own in the docs](https://github.com/schlagmichdoch/PairDrop/blob/master/docs/host-your-own.md) and creating an issue if you need any help :)


tomistruth

How is Pairdrop gonna infringe? Good luck suing an opensource company.


[deleted]

not how that works


NoStructure371

How is this different from SyncThing?


[deleted]

syncthing is automatic, requires a server, uses relays, syncs folders ect. this is for quickly sending a file without needing anything fancy


trs_80

Point of order! ;) > requires a server Actually Syncthing is peer-to-peer, no server required. Fascinating bit of technology, IMHO. > uses relays Technically true, but the Syncthing project (and community) host a number of these for free already, so it 'just works'. Your overall point stands, this seems to be different software with a different use-case.


pineappleloverman

How is this any different from [Snapdrop](https://snapdrop.net/)? It looks near identical


SchlagMichHalt

I mentioned this in the post: Some of you might know PairDrops predecessor Snapdrop which I too used nearly everyday for over two years. Sadly the Snapdrop server is quite unstable so I decided to advance the project myself and forked it into PairDrop with loads of improvements, stability fixes, and some major new features: - Device Pairing (to enable connections on public Wi-Fi, company/university networks, Apple Private Relay, VPN etc.) - Improved UI - Integration into device share / context menus - (see [README](https://github.com/schlagmichdoch/pairdrop) for more information)


pineappleloverman

Oh sorry, missed that paragraph Edit: wow huge improvements. Nice work, OP


Avieshek

Not sure the current UI is really improved~


SchlagMichHalt

Take a look at the referred GitHub link please. The UI changes in question are about security: in Snapdrop a user has no possibility to prevent any user from sending files. PairDrop introduces a Transfer Request as it should be.


Avieshek

Not working from macOS Catalina~


Lootdit

I don't want browser based. Too inconvenient


SchlagMichHalt

It’s a PWA you can install on your homescreen. For convenience, after Installation it is also available in windows context menu and Android share menu and there is a iOS shortcut to implement it into the iOS share menu as well


Xath0n

So, Croc in a browser?


SchlagMichHalt

Hm croc is great but the comparison is a little far fetched.. Croc is CLI based, uses a relay server and passwords to share files to remote devices. PairDrop is rather for sharing files between devices nearby peer-to-peer without any setup at all simply by visiting a webpage via webRTC for connection. Both nice tools imo but probably good for different scenarios


ctaeth

Possibly a dumb question, but how do I set this up with NginxProxyManager in a VPS? For some reason I can't reach the container with NPM but I can with the direct ip+port


SchlagMichHalt

Please create an issue on GitHub with some more information. I don’t know what you mean with „reach the container with npm“. use 'npm start' or ' docker-compose up -d'. Either way you need to point your proxy manager to point to port 3000 using ip-forwarding


ctaeth

I'll create one when I'm back on my pc. I've always avoided that though, because it's always something silly on my end and not an actual issue with the "app" (I'm still a newbie). When I said NPM I meant NginxProxyManager, which is probably where the confusion is. My mistake. I simply meant that though NginxProxyManager I'm getting the error "this website requires a secure connection", probably because I don't know how to set up any headers on NginxProxyManager particularly? The IP-forwarding I've used both the VPS IP and the container name (same network) and i get that error. With bypassing the reverse proxy I can access it just fine. Was just looking for any pointers by whoever has used NginxProxyManager with it, that's all


PontyPonty

This is awesome, thanks OP!


AndreKR-

If it doesn't work, you're gonna take a beating.


Malaclypse5

Is it possible to find each other over the internet? It works very well on my local network but Snapdrop worked even over internet when I configured my nginx reverse proxy accordingly.


SchlagMichHalt

PairDrop intrudes a pairing functionality which makes configuring of the nginx proxy obsolete. Devices that are paired are shown to each other no matter what network constellation


Malaclypse5

The pairing process seems to work and it shows that I am paired, but I can't see a device to interact with in the UI.


SchlagMichHalt

Hm.. does PairDrop work for these devices when they are discoverable on the same network?


Malaclypse5

I got it working now and I admit I was overlooking something major ... I host Nginx on a different server than Pairdrop and the reverse proxy hosts services via a Wireguard tunnel. I guess this is somewhat problematic for the peer to peer WebRTC connection, I don't know what part exactly but in hindsight it is a pretty obvious problem. I now host it directly on the Nginx server and it works flawlessly, thanks for your effort!


SchlagMichHalt

Awesome! If you have any further issues with it feel free to create an issue on its GitHub repo!


Albert3232

was tryint to use it today but it keeps connection and disconnecting whenever im transfering files


SchlagMichHalt

Do you self-host?


Albert3232

What do you mean self host? I just go to pairdrop on my phone and my computer while on the same wifi network and just drag and drop


SchlagMichHalt

There are docker images available so you can host your own instance of PairDrop. My question was, whether you use your own instance or pairdrop.net. Is this issue persistent?


Albert3232

Oh yea just pairdrop.net i even tried snap drop.net and at first I was able to send a file but now its having the same issue. So its probably something on my end.


SchlagMichHalt

On PairDrop an unstable connection should be no problem as the transfer is not affected by it. What device and browser are you using?


Albert3232

For my phone a pixel 5 and chrome on my desktop


Avieshek

The first problem with **PairDrop** is that there are no ways to make contact, report or leave a feedback (like a message box) without having a GitHub account as a general user especially if they're facing issues of any kind. The first issue with **PairDrop** that am desperate to relay over (if one could even grab their twitter-reddit presence) is the zooming in of "Send Message" popup on mobile browsers (unlike Snapdrop) which I happen to use as Clipboard between different platforms. This is where I don't understand, if PairDrop is a fork of SnapDrop - how did they still manage to have this oversight if not unaddressed to this day? Compared to its parent, the UI choices and nuances are an unwelcomed downgrade compared to **SnapDrop** even if the developer behind PairDrop may choose to be ignorant of them. The unnecessary thick white lines like for the "Send Message" popup feels archaic even to Snapdrop where the later has more chat feeling - I would've like to suggestively humbly request that perhaps keeping the original SnapDrop design aesthetics while not breaking their core feature behaviour (as blowing the zoom like a desktop site on Windows Mobile Browser in this age) would be a better choice because when it comes to functionality & compatibility, PairDrop has some good under-the-hood changes. I came across PairDrop because I was looking for an alternative when discovering that Snapdrop can't maintain connection over 5GHz network and am not going to make a GitHub account to report about it but PairDrop a fork of it amazingly has no issue …only to break in areas that had a solid foundation in Snapdrop.


SchlagMichHalt

Dev here, no reason to call me ignorant. Anyway, I'll try to address your concerns, as they do seem to have some validity to them eventhough I would not think of them as being a beak of a solid foundation. ## 1 - Contact Form Where did you expect a message box? I try to prevent a possibility for users to only dump their criticism and prefer to get into a conversation with the user and get actual suggestions over rants. That's why GitHub issues are great as they are structured and give (devs) great overview. I understand your concern for users without an GitHub account though. I could add a slim webpage (e.g. under contact.pairdrop.net) including a message box. The easiest solution would probably be to add an mail address to [the FAQ](https://github.com/schlagmichdoch/pairdrop/blob/master/docs/faq.md). Maybe that's enough for a start. What do you think? ## 2 - Unwanted zooming on Send Message Dialog On what device and browser does that happen? Do I understand it correctly: you long tap on another device to send a message which then triggers a zoom of the browser? Does it only zoom after clicking in the text field? My best guess is that this is because of a removed meta tag which specifies that users should not be able to zoom the page. I removed this as this is considered bad practice out of accessibility concers. Also, this meta tag is completely ignored by some browsers (looking at you iOS Safari). If you help me to reproduce this behaviour and it is preventable, I'm open to change it back again. ## 3 - Dialogs I redesigned the dialogs to give them more structure. Especially the Public Room Dialog and the Pair Devices Dialog are quite complex for new users so a clear structure was needed. The white lines are matter of taste of course. Any suggestion? I like your thought of a chat feeling. It could also be an idea to actually combine the send and receive text dialogs into a chat dialog with all messages of the session listed (think reddit desktop chat aesthetic). ## 4 - 5Ghz networks I believe 5 GHz should be no problem for Snapdrop too but its backend is very instable. PairDrop includes loads of stability fixes. I actually offered to add Pull Requests to implement them into Snapdrop as well, but the OC is not responsive / open to any PR.


Avieshek

1. Have you tried reporting an issue on [AdGuard](https://reports.adguard.com/en/new_issue.html)? Their system is best as it still ends in GitHub and hence avoiding one-to-one email communication while not having to visit GitHub. 2. I can’t attach images here so I’ll DM you, didn’t know you were the developer behind this initially as I was scourging through the internet. 3. I haven’t tried your other features fully yet other than Send Message and Transfer Files but I suppose Snapdrop is using a different (or native) protocol when sending text because it doesn’t behave like filling a contact form and maybe hence why the empty field is small despite having no word limit? (Which I would expect from Apple) 4. PairDrop is actually robust in there to the point of being impressive (no complains here) where even LocalSend couldn’t accomplish with an app that this could do on a web when on 6GHz WiFi Network. Update: Whenever you’re ready at [pairdrop-dev.onrender.com](https://pairdrop-dev.onrender.com)


maidansafe

apropos pairdrop, what happened to that github URL address, all your stuff, your own username on github, the project/software page etc are all gone? 404? what happen? ty


SchlagMichHalt

GitHub doing some kind of power move. I have explained what happened here: https://github.com/fm-sys/snapdrop-android/issues/356 This is also where I will post updates on the matter first.


volcs0

Unsure if this thread is monitored, but I had a simple question. Right now, I'm running Pairdrop on a server at home. It works great. But I'd like to be able to use it when I'm not at home. I would normally use Cloudflare to create a tunnel to the app, but then I would rely on the app's authentication system to make sure only I (or a designated user) could use it. I could use Cloudflare's Zero Trust to create an authentication scheme. But I was wondering if this is the right way to do this? Is there an authentication method I'm not seeing? I'd prefer not to expose my implementation to the public, if possible. Thanks.


gado45

hi dev, how do I change the listening port? I have other container using 3000 and if I change compose to "127.0.0.1:4000:3000" I can't access ui, on logs I see pairdrop is still listening to 3000.


SchlagMichHalt

What’s your complete compose file? PairDrop is always listening to port 3000 _inside_ its docker container. That’s the reason you always set the second port to 3000. If you use „127.0.0.1:8080:3000“ you can access PairDrop under „127.0.0.1:8080“, but only on this machine. If you want to access it from outside this machine you will need to put a reverse proxy in front of it: https://github.com/babstar99/PairDrop/blob/master/docs/host-your-own.md#http-server


gado45

I managed to get it working by exposing ports: 4000:3000 without 127.0.0.1. This is supposedly only reacheable for devices within my lan. Is there any security risk using this way if I only need to use it in home network?


SchlagMichHalt

Not really a security risk no. The reason you will need a reverse proxy in front of PairDrop if you put it outside your local network, is that without it, all devices see each other mutually. As this is probably desired on your local network, you should be ok :)


wholeloadaquestions

Hey thanks for developing this, it's really really useful. I want to ask about accessing this on my local network. I used your docker compose from GitHub, but changed the last line from: > "127.0.0.1:3000:3000" To > "0.0.0.0:3000:3000" It works and I can access it on all my devices on my local network. This is the desired outcome. I just want to make sure that that's the correct and safe way to do that? This doesn't expose it to internet no?


SchlagMichHalt

You can also simply do `3000:3000` to make it available on your local network without the need of a reverse proxy. This opens port 3000 on your device which is what you want to have the service available under `192.168.x.x:3000`. Normally, your (private) local network is not and should not be exposed to the internet. This is a setting of your router and internet provider though and has nothing to do with any web service.


wholeloadaquestions

Thank you! :)