• Stars
    star
    562
  • Rank 77,594 (Top 2 %)
  • Language
    Dart
  • License
    GNU General Publi...
  • Created over 5 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Lightning Network mobile client

Breez Mobile Client

screenshot screenshot screenshot

Breez is a Lightning Network mobile client and a hub. It provides a platform for simple, instantaneous bitcoin payments.
Breez is currently in a public beta, available on Android and on iOS.
To learn more about it, please read Introducing Breez.

Features

  • lnd on Android
  • Neutrino on Android
  • Seamless hub channel creation
  • Adding funds using on-chain tx
  • BTC & Satoshi units
  • Random avatars
  • Connect to Pay: simple interface to execute payments between users
  • A full lncli interface to query and execute ln commands
  • Filter tx by type
  • Filter tx by date
  • Pay invoice (link or QR) from other ln wallets
  • Create invoice (link or QR) to be paid by other ln wallets
  • Removing funds to an on-chain address
  • SubmarineSwaps for adding on-chain funds including refund functionality
  • End-to-end encryption of Connect-to-Pay session
  • Make Connect-to-Pay links work for users that didn't yet install Breez
  • Ability to Backup/Restore the ln node
  • Mainnet support
  • Support zero-sat invoices
  • Startup optimizations
  • Background sync via FCM
  • Marketplace w/ Bitrefill
  • Adding funds via vouchers
  • Backup improvements
  • Add background ChannelsWatcher job
  • Expose Bitcoin Node (BIP157) configuration
  • iOS support
  • Add webLN support
  • Fiat units
  • Optional PIN
  • Adding funds via credit card
  • Add stronger encryption to cloud backup
  • iCloud backup option
  • Dark mode
  • Export payments to .csv
  • Support 3rd-party LSPs
  • Biometric login
  • Fast onboarding
  • Pay w/o full sync
  • Implement lnurl-withdraw
  • Send on-chain via reverse Submarine Swaps
  • Improve hodl invoice support
  • POS POC release
  • Spontaneous payments to node id (nodes running with --accept-keysend)
  • Fast graph sync
  • Scan QR code from an image
  • Import/export POS items
  • Support zero-conf channels
  • 'On-the-fly' channel creation (increase limit)
  • Remove reserve working using Breez channels
  • Support additional fiat currencies
  • Support LNURL-Auth & LNURL-Fallback
  • Print POS transactions
  • Hide balance
  • Read NFC tags on Android
  • In-app podcast player (podcasting 2.0)
  • Backup to WebDav servers (e.g. Nextcloud)
  • Support LNURL-Pay (bounty redeemed)
  • Send to a Lightning address
  • Boostagrams
  • WebDav backups
  • Sales reports
  • Top podcasts
  • NFC checkout
  • Tor support (Android)
  • Neutrino sync optimizations
  • Async payments

System Requirements

  • Android 7+ 64bit
  • iPhone 6+

Setting up the environment

Prerequisites

Make sure you have Flutter 3 installed on your system before continuing the setup process.

Setting up for Android

  1. Build breez.aar as described in https://github.com/breez/breez
  2. Create a symlink from the breez.aar to android/app/libs directory.
  3. Create an Android app on Firebase and download google-services.json file.
  • Package name (for debugging): com.breez.client.debug
  1. Copy the downloaded google-services.json file to android/app/src/client folder.

Setting up for iOS

  1. Build and bindings.xcframework as described in https://github.com/breez/breez
  2. Copy the bindings.xcframework directory to the ios directory.
  3. Create an iOS app on Firebase and download GoogleServices-info.plist file.
  4. Copy the downloaded GoogleServices-info.plist file to ios/Runner folder.
  5. Run pod install from breezmobile/ios

Building and Running

# Install dependencies for building
flutter pub get

# Run a client app on the connected device
flutter run --flavor=client

# Build a client app as APK file
flutter build apk --target-platform=android-arm64 --flavor=client --debug

Overview for Developers

Running Breez in simnet