From 214d557feb9af2b07c904aa3e06d24ece5cf50f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Allan=20Nordh=C3=B8y?= Date: Thu, 30 Nov 2023 01:20:28 +0000 Subject: [PATCH 1/4] README reworked --- README.md | 150 ++++++++++++++++++++++++++---------------------------- 1 file changed, 72 insertions(+), 78 deletions(-) diff --git a/README.md b/README.md index fc8ce2f..64077b0 100644 --- a/README.md +++ b/README.md @@ -3,129 +3,123 @@ Logo -

PairDrop

+ # _Send it_, with [PairDrop](https://pairdrop.net)

- Local file sharing in your browser. Inspired by Apple's AirDrop. -
- Explore » + Local file sharing in your web browser.

- Report Bug - · - Request Feature + Report a bug +
+ Request feature

## Features -[PairDrop](https://pairdrop.net) is a sublime alternative to AirDrop that works on all platforms. +File sharing on your local network that works on all platforms. -- File Sharing on your local network - - Send images, documents or text via peer to peer connection to devices on the same local network. -- Internet Transfers - - Join temporary public rooms to transfer files easily over the internet! -- Web-Application - - As it is web based, it runs on all devices. +- A multi-platform AirDrop-like solution that works. + - Send images, documents or text via peer-to-peer connection to devices on the same local network. +- Internet transfers + - Join temporary public rooms to transfer files easily over the Internet. +- Web-app + - Works on all devices with a web browser (that supports HTML5, CSS 3, JS, and WebRTC). + +Send a file from your phone to your laptop? +
Share photos in original quality with friends using Android and iOS? +
Share private files peer-to-peer between Linux systems? -You want to quickly send a file from your phone to your laptop? -
You want to share photos in original quality with friends that use a mixture of Android and iOS? -
You want to share private files peer to peer between Linux systems? -
AirDrop is unreliable again? -
_Send it with PairDrop!_ +## Differences to the [Snapdrop](https://github.com/RobinLinus/snapdrop) it is based on +
List view -Developed based on [Snapdrop](https://github.com/RobinLinus/snapdrop) - -## Differences to Snapdrop -
Click to expand - -### Paired Devices and Public Rooms - Internet Transfer -* Transfer files over the internet between paired devices or by entering temporary public rooms. -* Connect to devices in complex network environments (public Wi-Fi, company network, Apple Private Relay, VPN etc.). +### Paired Devices and Public Rooms — Internet Transfer +* Transfer files over the Internet between paired devices or by entering temporary public rooms. +* Connect to devices in complex network environments (public Wi-Fi, company network, Apple private relay, VPN, etc.). * Connect to devices on your mobile hotspot. -* Devices outside your local network that are behind a NAT are connected automatically via the PairDrop TURN server. +* Devices outside of your local network that are behind a NAT are autop-connected via the PairDrop TURN server. * Connect to devices on your mobile hotspot. -* You will always discover devices on your local network. Paired devices and devices in the same public room are shown additionally. +* Devices that are paired devices, in the same public room, or on your local network are shown. #### Persistent Device Pairing -* Pair your devices via a 6-digit code or a QR-Code. -* Paired devices will always find each other via shared secrets independently of their local network. -* Paired devices are persistent. You find your devices even after reopening PairDrop. -* You can edit and unpair devices easily -* Ideal to always connect easily to your own devices + +Always connect to known devices + +* Pair devices via a 6-digit code or a QR-Code. +* Paired devices always find each other via shared secrets independently of their local network. +* Pairing is persistent. You find your devices even after reopening PairDrop. +* You can edit and unpair devices easily. #### Temporary Public Rooms -* Enter a public room via a 5-letter code or a QR-Code. -* Enter a public room to temporarily connect to devices outside your local network. -* All devices in the same public room see each other mutually. -* Public rooms are temporary. Public rooms are left as soon as PairDrop is closed. -* Ideal to connect easily to others in complex network situations or over the internet. -### [Improved UI for sending/receiving files](https://github.com/RobinLinus/snapdrop/issues/560) -* Files are transferred only after a request is accepted first. On transfer completion files are downloaded automatically if possible. +Connect to others in complex network situations, or over the Internet. + +* Enter a public room via a 5-letter code or a QR-code. +* Enter a public room to temporarily connect to devices outside your local network. +* All devices in the same public room see each other. +* Public rooms are temporary. Closing PairDrop leaves all rooms. + +### [Improved UI for Sending/Receiving Files](https://github.com/RobinLinus/snapdrop/issues/560) +* Files are transferred after a request is accepted. Files are auto-downloaded upon completing a transfer, if possible. * Multiple files are downloaded as a ZIP file -* On iOS and Android, in addition to downloading, files can be shared or saved to the gallery via the Share menu. -* Multiple files are transferred at once with an overall progress indicator +* Download, share or save to gallery via the "Share" menu on Android and iOS. +* Multiple files are transferred at once with an overall progress indicator. ### Send Files or Text Directly From Share Menu, Context Menu or CLI -* [Send files directly from context menu on Windows](/docs/how-to.md#send-files-directly-from-context-menu-on-windows) -* [Send directly from share menu on iOS](/docs/how-to.md#send-directly-from-share-menu-on-ios) -* [Send directly from share menu on Android](/docs/how-to.md#send-directly-from-share-menu-on-android) -* [Send directly via command-line interface](/docs/how-to.md#send-directly-via-command-line-interface) +* [Send files directly from the context menu on Windows](/docs/how-to.md#send-files-directly-from-context-menu-on-windows) +* [Send directly from the "Share" menu on iOS](/docs/how-to.md#send-directly-from-share-menu-on-ios) +* [Send directly from the "Share" menu on Android](/docs/how-to.md#send-directly-from-share-menu-on-android) +* [Send directly via the command-line interface](/docs/how-to.md#send-directly-via-command-line-interface) -### Other changes -* Change your display name permanently to easily differentiate your devices -* [Paste files/text and choose the recipient afterwords ](https://github.com/RobinLinus/snapdrop/pull/534) +### Other Changes +* Change your display name to easily differentiate your devices. +* [Paste files/text and choose the recipient afterwards ](https://github.com/RobinLinus/snapdrop/pull/534) * [Prevent devices from sleeping on file transfer](https://github.com/RobinLinus/snapdrop/pull/413) * Warn user before PairDrop is closed on file transfer * Open PairDrop on multiple tabs simultaneously (Thanks [@willstott101](https://github.com/willstott101)) -* [Video and Audio preview](https://github.com/RobinLinus/snapdrop/pull/455) (Thanks [@victorwads](https://github.com/victorwads)) -* Switch theme back to auto/system after darkmode or lightmode is enabled -* Node-only implementation (Thanks [@Bellisario](https://github.com/Bellisario)) -* Automatic restart on error (Thanks [@KaKi87](https://github.com/KaKi87)) +* [Video and audio preview](https://github.com/RobinLinus/snapdrop/pull/455) (Thanks [@victorwads](https://github.com/victorwads)) +* Switch theme back to auto/system after dark or light mode is on +* * Node-only implementation (Thanks [@Bellisario](https://github.com/Bellisario)) +* Auto-restart on error (Thanks [@KaKi87](https://github.com/KaKi87)) * Lots of stability fixes (Thanks [@MWY001](https://github.com/MWY001) [@skiby7](https://github.com/skiby7) and [@willstott101](https://github.com/willstott101)) * To host PairDrop on your local network (e.g. on Raspberry Pi): [All peers connected with private IPs are discoverable by each other](https://github.com/RobinLinus/snapdrop/pull/558) -* When hosting PairDrop yourself you can [set your own STUN/TURN servers](/docs/host-your-own.md#specify-stunturn-servers) -* Built-in translations +* When hosting PairDrop yourself, you can [set your own STUN/TURN servers](/docs/host-your-own.md#specify-stunturn-servers) +* Translations.
## Screenshots -## PairDrop is built with the following awesome technologies: -* Vanilla HTML5 / ES6 / CSS3 frontend -* [WebRTC](http://webrtc.org/) / [WebSockets](http://www.websocket.org/) -* [NodeJS](https://nodejs.org/en/) backend -* [Progressive Web App](https://wikipedia.org/wiki/Progressive_Web_App) +## Built with the following awesome technologies: +* Vanilla HTML5 / JS ES6 / CSS 3 frontend +* [WebRTC](http://webrtc.org/) / WebSockets +* [Node.js](https://nodejs.org/en/) backend +* [Progressive web app](https://wikipedia.org/wiki/Progressive_Web_App) * [IndexedDB API](https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API) * [zip.js](https://gildas-lormeau.github.io/zip.js/) -* [cyrb53](https://github.com/bryc) super fast hash function -* [Weblate](https://weblate.org/) Web based localization tool +* [cyrb53](https://github.com/bryc/code/blob/master/jshash/experimental/cyrb53.js) super-fast hash function +* [Weblate](https://weblate.org/) web-based localization tool -Have any questions? Read our [FAQ](/docs/faq.md). +[FAQ](/docs/faq.md) -You can [host your own instance with Docker](/docs/host-your-own.md). +[Host your own instance with Docker](/docs/host-your-own.md). - -## Support PairDrop +## Support -Buy Me A Coffee +Buy me a coffee -PairDrop is free and always will be. -Still, we have to pay for the domain and the server. +PairDrop is libre, and always will be. \ +I footed the bill for the domain and the server, and you can help create great softeare by supporting me. \ +Please use BuyMeACoffee via the button above. \ +Thanks a lot for supporting copylefted libre software! -To contribute and support, please use BuyMeACoffee via the button above. - -Thanks a lot for supporting free and open software! - -## Translate PairDrop +## Translate PairDrop on Hosted Weblate Translation status -## How to contribute - +## Contributing Feel free to [open an issue](https://github.com/schlagmichdoch/pairdrop/issues/new/choose) or a -[pull request](https://github.com/schlagmichdoch/pairdrop/pulls) but follow +[pull request](https://github.com/schlagmichdoch/pairdrop/pulls), following the [Contributing Guidelines](/CONTRIBUTING.md). From 5dcda58ce5110e5b5fde6c693ff6e149ecbe5c1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Allan=20Nordh=C3=B8y?= Date: Sat, 13 Jan 2024 13:18:06 +0000 Subject: [PATCH 2/4] Structure and requested fixes --- README.md | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index ae46b1e..31a6a7f 100644 --- a/README.md +++ b/README.md @@ -23,22 +23,24 @@ File sharing on your local network that works on all platforms. - Internet transfers - Join temporary public rooms to transfer files easily over the Internet. - Web-app - - Works on all devices with a web browser (that supports HTML5, CSS 3, JS, and WebRTC). + - Works on all devices with a modern web-browser. Send a file from your phone to your laptop?
Share photos in original quality with friends using Android and iOS?
Share private files peer-to-peer between Linux systems? + + ## Differences to the [Snapdrop](https://github.com/RobinLinus/snapdrop) it is based on
List view ### Paired Devices and Public Rooms — Internet Transfer * Transfer files over the Internet between paired devices or by entering temporary public rooms. -* Connect to devices in complex network environments (public Wi-Fi, company network, Apple private relay, VPN, etc.). +* Connect to devices in complex network environments (public Wi-Fi, company network, iCloud Private Relay, VPN, etc.). * Connect to devices on your mobile hotspot. -* Devices outside of your local network that are behind a NAT are autop-connected via the PairDrop TURN server. +* Devices outside of your local network that are behind a NAT are auto-connected via the PairDrop TURN server. * Connect to devices on your mobile hotspot. -* Devices that are paired devices, in the same public room, or on your local network are shown. +* Devices from the local network, in the same public room, or previously paired are shown. #### Persistent Device Pairing @@ -87,38 +89,37 @@ Connect to others in complex network situations, or over the Internet.
-## Screenshots - +## Translate PairDrop on [Hosted Weblate](https://hosted.weblate.org/engage/pairdrop/) + +Translation status + ## Built with the following awesome technologies: * Vanilla HTML5 / JS ES6 / CSS 3 frontend * [WebRTC](http://webrtc.org/) / WebSockets * [Node.js](https://nodejs.org/en/) backend -* [Progressive web app](https://wikipedia.org/wiki/Progressive_Web_App) -* [IndexedDB API](https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API) -* [zip.js](https://gildas-lormeau.github.io/zip.js/) +* [Progressive web app (PWA)](https://en.wikipedia.org/wiki/Progressive_web_app) unified functionality +* [IndexedDB API](https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API) storage handling +* [zip.js](https://gildas-lormeau.github.io/zip.js/) library * [cyrb53](https://github.com/bryc/code/blob/master/jshash/experimental/cyrb53.js) super-fast hash function * [Weblate](https://weblate.org/) web-based localization tool [FAQ](docs/faq.md) -[Host your own instance with Docker](docs/host-your-own.md). +[Host your own instance with Docker or Node.js](docs/host-your-own.md). ## Support -Buy me a coffee +Buy me a coffee +
+
PairDrop is libre, and always will be. \ I footed the bill for the domain and the server, and you can help create great softeare by supporting me. \ Please use BuyMeACoffee via the button above. \ Thanks a lot for supporting copylefted libre software! -## Translate PairDrop on Hosted Weblate - -Translation status - - ## Contributing Feel free to [open an issue](https://github.com/schlagmichdoch/pairdrop/issues/new/choose) or a [pull request](https://github.com/schlagmichdoch/pairdrop/pulls), following the From 6c1672ba2583750aeb40696e861b6bccf7dc5bb8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Allan=20Nordh=C3=B8y?= Date: Sat, 13 Jan 2024 13:44:44 +0000 Subject: [PATCH 3/4] Fixing conflicts, better --- README.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index c176651..a0ff8ff 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ Send a file from your phone to your laptop?
Share photos in original quality with friends using Android and iOS?
Share private files peer-to-peer between Linux systems? - +Gif of Screenshots that show PairDrop in use ## Differences to the [Snapdrop](https://github.com/RobinLinus/snapdrop) it is based on
List view @@ -67,7 +67,7 @@ Connect to others in complex network situations, or over the Internet. * Multiple files are transferred at once with an overall progress indicator. ### Send Files or Text Directly From Share Menu, Context Menu or CLI -* [Send files directly from context menu on Ubuntu (using Nautilus)](/docs/how-to.md#send-multiple-files-and-directories-directly-from-context-menu-on-ubuntu-using-nautilus) +* [Send files directly from context menu on Ubuntu (using Nautilus)](docs/how-to.md#send-multiple-files-and-directories-directly-from-context-menu-on-ubuntu-using-nautilus) * [Send files directly from the context menu on Windows](docs/how-to.md#send-files-directly-from-context-menu-on-windows) * [Send directly from the "Share" menu on iOS](docs/how-to.md#send-directly-from-share-menu-on-ios) * [Send directly from the "Share" menu on Android](docs/how-to.md#send-directly-from-share-menu-on-android) @@ -92,7 +92,7 @@ Connect to others in complex network situations, or over the Internet. ## Translate PairDrop on [Hosted Weblate](https://hosted.weblate.org/engage/pairdrop/) -Translation status +Translation status ## Built with the following awesome technologies: @@ -103,6 +103,8 @@ Connect to others in complex network situations, or over the Internet. * [IndexedDB API](https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API) storage handling * [zip.js](https://gildas-lormeau.github.io/zip.js/) library * [cyrb53](https://github.com/bryc/code/blob/master/jshash/experimental/cyrb53.js) super-fast hash function +* [NoSleep](https://github.com/richtr/NoSleep.js) display sleep, add wake lock ([MIT](licenses/MIT-NoSleep)) +* [heic2any](https://github.com/alexcorvi/heic2any) HEIC/HEIF to PNG/GIF/JPEG ([MIT](licenses/MIT-heic2any)) * [Weblate](https://weblate.org/) web-based localization tool [FAQ](docs/faq.md) From f048c4f1bdb73e931ee1875bb186c8e14bd9aa84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Allan=20Nordh=C3=B8y?= Date: Sat, 13 Jan 2024 13:46:19 +0000 Subject: [PATCH 4/4] GIF --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index a0ff8ff..02621f3 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ Send a file from your phone to your laptop?
Share photos in original quality with friends using Android and iOS?
Share private files peer-to-peer between Linux systems? -Gif of Screenshots that show PairDrop in use +Screenshot GIF showing PairDrop in use ## Differences to the [Snapdrop](https://github.com/RobinLinus/snapdrop) it is based on
List view