README reworked

This commit is contained in:
Allan Nordhøy 2023-11-30 01:20:28 +00:00 committed by GitHub
parent ddeafd1b46
commit 214d557feb
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

148
README.md
View file

@ -3,129 +3,123 @@
<img src="https://raw.githubusercontent.com/schlagmichdoch/PairDrop/master/public/images/android-chrome-512x512.png" alt="Logo" width="150" height="150"> <img src="https://raw.githubusercontent.com/schlagmichdoch/PairDrop/master/public/images/android-chrome-512x512.png" alt="Logo" width="150" height="150">
</a> </a>
<h1>PairDrop</h1> # _Send it_, with [PairDrop](https://pairdrop.net)
<p> <p>
Local file sharing in your browser. Inspired by Apple's AirDrop. Local file sharing <a href="https://pairdrop.net"><strong>in your web browser</strong></a>.
<br />
<a href="https://pairdrop.net"><strong>Explore »</strong></a>
<br /> <br />
<br /> <br />
<a href="https://github.com/schlagmichdoch/PairDrop/issues">Report Bug</a> <a href="https://github.com/schlagmichdoch/PairDrop/issues">Report a bug</a>
· <br />
<a href="https://github.com/schlagmichdoch/PairDrop/issues">Request Feature</a> <a href="https://github.com/schlagmichdoch/PairDrop/issues">Request feature</a>
</p> </p>
</div> </div>
## Features ## 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 - 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. - Send images, documents or text via peer-to-peer connection to devices on the same local network.
- Internet Transfers - Internet transfers
- Join temporary public rooms to transfer files easily over the internet! - Join temporary public rooms to transfer files easily over the Internet.
- Web-Application - Web-app
- As it is web based, it runs on all devices. - Works on all devices with a web browser (that supports HTML5, CSS 3, JS, and WebRTC).
You want to quickly send a file from your phone to your laptop? Send a file from your phone to your laptop?
<br>You want to share photos in original quality with friends that use a mixture of Android and iOS? <br>Share photos in original quality with friends using Android and iOS?
<br>You want to share private files peer to peer between Linux systems? <br>Share private files peer-to-peer between Linux systems?
<br>AirDrop is unreliable again?
<br>_Send it with PairDrop!_
Developed based on [Snapdrop](https://github.com/RobinLinus/snapdrop) ## Differences to the [Snapdrop](https://github.com/RobinLinus/snapdrop) it is based on
<details><summary>List view</summary>
## Differences to Snapdrop ### Paired Devices and Public Rooms — Internet Transfer
<details><summary>Click to expand</summary> * 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. * 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. * 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 #### 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. Always connect to known devices
* Paired devices are persistent. You find your devices even after reopening PairDrop.
* You can edit and unpair devices easily * Pair devices via a 6-digit code or a QR-Code.
* Ideal to always connect easily to your own devices * 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 #### 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) Connect to others in complex network situations, or over the Internet.
* Files are transferred only after a request is accepted first. On transfer completion files are downloaded automatically if possible.
* 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 * 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. * 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 * 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 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 files directly from the 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 the "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 from the "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 directly via the command-line interface](/docs/how-to.md#send-directly-via-command-line-interface)
### Other changes ### Other Changes
* Change your display name permanently to easily differentiate your devices * Change your display name to easily differentiate your devices.
* [Paste files/text and choose the recipient afterwords ](https://github.com/RobinLinus/snapdrop/pull/534) * [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) * [Prevent devices from sleeping on file transfer](https://github.com/RobinLinus/snapdrop/pull/413)
* Warn user before PairDrop is closed on file transfer * Warn user before PairDrop is closed on file transfer
* Open PairDrop on multiple tabs simultaneously (Thanks [@willstott101](https://github.com/willstott101)) * 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)) * [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 * Switch theme back to auto/system after dark or light mode is on
* Node-only implementation (Thanks [@Bellisario](https://github.com/Bellisario)) * * Node-only implementation (Thanks [@Bellisario](https://github.com/Bellisario))
* Automatic restart on error (Thanks [@KaKi87](https://github.com/KaKi87)) * 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)) * 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) * 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) * When hosting PairDrop yourself, you can [set your own STUN/TURN servers](/docs/host-your-own.md#specify-stunturn-servers)
* Built-in translations * Translations.
</details> </details>
## Screenshots ## Screenshots
<img src="https://raw.githubusercontent.com/schlagmichdoch/PairDrop/master/docs/pairdrop_screenshot_mobile.gif" style="max-height: 50vh"> <img src="https://raw.githubusercontent.com/schlagmichdoch/PairDrop/master/docs/pairdrop_screenshot_mobile.gif" style="max-height: 50vh">
## PairDrop is built with the following awesome technologies: ## Built with the following awesome technologies:
* Vanilla HTML5 / ES6 / CSS3 frontend * Vanilla HTML5 / JS ES6 / CSS 3 frontend
* [WebRTC](http://webrtc.org/) / [WebSockets](http://www.websocket.org/) * [WebRTC](http://webrtc.org/) / WebSockets
* [NodeJS](https://nodejs.org/en/) backend * [Node.js](https://nodejs.org/en/) backend
* [Progressive Web App](https://wikipedia.org/wiki/Progressive_Web_App) * [Progressive web app](https://wikipedia.org/wiki/Progressive_Web_App)
* [IndexedDB API](https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API) * [IndexedDB API](https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API)
* [zip.js](https://gildas-lormeau.github.io/zip.js/) * [zip.js](https://gildas-lormeau.github.io/zip.js/)
* [cyrb53](https://github.com/bryc) super fast hash function * [cyrb53](https://github.com/bryc/code/blob/master/jshash/experimental/cyrb53.js) super-fast hash function
* [Weblate](https://weblate.org/) Web based localization tool * [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
## Support PairDrop
<a href="https://www.buymeacoffee.com/pairdrop" target="_blank"> <a href="https://www.buymeacoffee.com/pairdrop" target="_blank">
<img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" style="height: 60px !important;width: 217px !important;" > <img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy me a coffee" style="height: 60px !important;width: 217px !important;" >
</a> </a>
PairDrop is free and always will be. PairDrop is libre, and always will be. \
Still, we have to pay for the domain and the server. 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. ## Translate PairDrop on Hosted Weblate
Thanks a lot for supporting free and open software!
## Translate PairDrop
<a href="https://hosted.weblate.org/engage/pairdrop/"> <a href="https://hosted.weblate.org/engage/pairdrop/">
<img src="https://hosted.weblate.org/widget/pairdrop/pairdrop-spa/open-graph.png" alt="Translation status" style="max-height: 30vh" /> <img src="https://hosted.weblate.org/widget/pairdrop/pairdrop-spa/open-graph.png" alt="Translation status" style="max-height: 30vh" />
</a> </a>
## How to contribute ## Contributing
Feel free to [open an issue](https://github.com/schlagmichdoch/pairdrop/issues/new/choose) or a 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). [Contributing Guidelines](/CONTRIBUTING.md).