/localsend

An open source cross-platform alternative to AirDrop

Primary LanguageDartMIT LicenseMIT

LocalSend

ci

Links: Homepage | Play Store | F-Droid | App Store | Windows Store

About

Share files to nearby devices. Free, open source, cross-platform.

This app allows you to send files and messages over the local LAN network.

No internet required, no external servers needed.

Screenshots

screenshot1 screenshot2

Protocol

Devices communicate with each other using a REST API.

Everything is sent securely over HTTPS. The TLS/SSL certificate is generated on the fly on each device.

For more information: LocalSend Protocol v1

Run

After you have installed Flutter, then you can start this app by typing the following commands:

flutter pub get
flutter pub run build_runner build -d
flutter run

Contributing

Translation

You can help translating this app to other languages!

  1. Fork this repository
  2. Choose one
    • Add missing translations in existing languages: Only update _missing_translations_<locale>.json in assets/i18n
    • Fix existing translations: Update strings_<locale>.i18n.json in assets/i18n
    • Add new languages: Create a new file, see also: locale codes.
  3. Optional: Re-run this app
    1. Make sure you have run this app once.
    2. Update translations via flutter pub run slang
    3. Run app via flutter run
  4. Open a pull request

Important: Do not translate keys starting with @. These are comments and should stay in English!

For convenience, you can use this link: https://github.com/localsend/localsend/new/main/assets/i18n

Bug fixes

Any bug fix is welcome! Please describe how and why your fix is needed in the PR.

Improvements

This app is very simple and should stay that way.

Please create an issue first so we can discuss why this improvement is needed.

Build

These commands are mostly for the maintainers.

Please ensure that flutter pub run build_runner build has been run. Otherwise, files will be missing.

Android

Traditional APK

flutter build apk

AppBundle for Google Play

flutter build appbundle

iOS

flutter build ipa

MacOS

flutter build macos

Windows

Traditional

flutter build windows

Local MSIX App

flutter pub run msix:create

Store ready

flutter pub run msix:create --store

Linux

Traditional

flutter build linux

AppImage

appimage-builder --recipe AppImageBuilder.yml

Snap

Feel free to open a pull request. There is a snap branch to play with.