Introduction
If you’re like me with a mixture of Apple, Linux, Windows, and Android devices then you understand the frustration of sending files and photos between devices. Often times I just send things to myself over email, which usually degrades the quality of photos. With this open-source tool LocalSend, you can now send files and photos between all of your devices with ease and in full quality.
How it works
LocalSend is made with Flutter, Google’s open-source cross-platform framework, and each device acts as a server and client. It sends and recieves the files using a REST API over HTTPS, with the TLS/SSL certificate generated on the fly for each device upon installation. This keeps the data secure during transfer and the connection from device to device encrpyted. It also doesn’t need an internet connection, which is why this is an alternative for AirDrop and Quick Share.
Download and Installation
You can choose to install it as a packaged application on any platform, with iOS and Amazon devices requiring you to use their official app stores. Alternatively you can get it from a few sources on desktop devices, or the prefered method for the most up-to-date version through compiling from source. Let’s walk through some of these methods.
Windows
You can use any of your favorite command line package managers like Winget, Scoop or Chocolately, or the MSIX installer, EXE installer, and finally a portable ZIP for no installation use. The EXE is the easiest way in my opinion, with the download coming from their website https://localsend.org/#/download.
Mac OS
Download the LocalSend app from the AppStore for the best experience with automatic updates. There is also the option to download the .DMG installer, but updates would have to be manual, and if you’re a command line enthusiast you can use Homebrew or Nix to do the installation.
Linux
The app is in Flathub, so users that have a Flathub UI store on their device such as Zorin OS can just get it installed from there and have updates notify you when available. You can also use Nix and AUR, along with application downloads in .AppImage, .deb, and a .tar archived folder.
Android
Download the app from Google Play, F-Droid, and Amazon appstore.
iOS
The AppStore is the only way to get it on iOS devices.
Using the App
The interface is quite clean and very intuitive. There are three tabs: Receive, Send, and Settings.
Recieve
There is not much going on in Receive unless someone is trying to send you something. It contains your client name and ID numbers, along with a little information tab about your device and a history tab.
Send
The Send tab contains a group of the different objects you can send. These include files, folders, text, and media on mobile or paste from your clipboard on desktop. This tab also shows any nearby devices that have their server running, plus some options like refreshing the list, enter an ip address, show your favorites, and send mode which gives you the option to send the file as a link that someone can download from if they don’t have the app.
Settings
This last section contains styling settings, your client’s name if you want to change it, language setting, and windows behaviors for the desktop apps, along with some other general settings. As of now there are only a few themes, but if you know how to code with Flutter you can customize the app to your heart’s content following their examples only if you build from source, and for mobile learn how to side load IPAs for apple and download APKs for Android. If you aren’t sure about what a setting does or means, it’s best not to touch it, especially in the Network section with advanced settings enabled as that is where you could mess up its functionality. I won’t include screenshots for this section since it’s just a list of settings.
Security, Contributions, and Community
This project currently has 110 contributors on the GitHub repository, which is indicative that it is community lead development. They even have a section that talks about how you can contribute to the project, so if you’re a budding or experienced developer and want to learn about Flutter cross-platform development, this might be a worthwhile project to contribute to. Their issues page has over 300 entries, so you can definitely find something to do.
They also have a Discord server that you can join and start conversing with other developers and project followers and collaborate on fixing issues and improving the app. Since it is community-driven, security is one of the important features that is constantly being updated over everything else. The app uses HTTPS for sending and recieving so all data is encrypted, and there is not backdoor in to the app for hackers to intercept your files.
Conclusion
This app is a great open-source solution that fixes the Apple-Android file share gap by providing a fantastic free tool that allows full quality file transfer to and from any device. If you want to give it a shot then you can find the links in the sources section below.
As always, if you like my content then like and subscribe and share it with your friends. Subscribing is free unless you wish to support me in my tech journey, so please don’t feel pressured to pay a dime. Knowledge is free :)
Come back on Tuesday for Tech Tuesday!