breez / Breezmobile
Programming Languages
Projects that are alternatives of or similar to Breezmobile
Breez Mobile Client
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.
Features
- [x] lnd on Android
- [x] Neutrino on Android
- [x] Seamless hub channel creation
- [x] Adding funds using on-chain tx
- [x] BTC & Satoshi units
- [x] Random avatars
- [x] Connect to Pay: simple interface to execute payments between users
- [x] Pay someone nearby: pay to another Breez user using NFC
- [x] NFC card support: activate an NFC card to be used by POS
- [x] A full lncli interface to query and execute ln commands
- [x] Filter tx by type
- [x] Filter tx by date
- [x] Pay invoice (link or QR) from other ln wallets
- [x] Create invoice (link or QR) to be paid by other ln wallets
- [x] Removing funds to an on-chain address
- [x] SubmarineSwaps for adding on-chain funds including refund functionality
- [x] End-to-end encryption of Connect-to-Pay session
- [x] Make Connect-to-Pay links work for users that didn't yet install Breez
- [x] Ability to Backup/Restore the ln node
- [x] Mainnet support
- [x] Support zero-sat invoices
- [x] Startup optimizations
- [x] Background sync via FCM
- [x] Marketplace w/ Bitrefill
- [x] Adding funds via vouchers
- [x] Backup improvements
- [x] Add background ChannelsWatcher job
- [x] Expose Bitcoin Node (BIP157) configuration
- [x] iOS support
- [x] Add webLN support
- [x] Fiat units
- [x] Optional PIN
- [x] Adding funds via credit card
- [x] Add stronger encryption to cloud backup
- [x] iCloud backup option
- [x] Dark mode
- [x] Export payments to .csv
- [x] Support 3rd-party LSPs
- [x] Biometric login
- [x] Fast on-boarding
- [x] Pay w/o full sync
- [x] Implement lnurl-withdraw
- [x] Send on-chain via reverse Submarine Swaps
- [x] Improve hodl invoice support
- [x] POS POC release
- [x] Spontaneous payments to node id (nodes running with --accept-keysend)
- [x] Fast graph sync
- [x] Scan QR code from an image
- [x] Import/export POS items
- [x] Support zero-conf channels
- [x] 'On-the-fly' channel creation (increase limit)
- [x] Remove reserve working using Breez channels
- [x] Support additional fiat currencies
- [x] Support LNURL-Auth & LNURL-Fallback
- [x] Print POS transactions
- [x] Hide balance
- [ ] Support LNURL-Pay
- [ ] Async payments via Lightning Rod
- [ ] Neutrino sync optimizations
- [ ] Support SD storage
System Requirements
- Android 7+ 64bit
- iPhone 6+
Build
- Build
breez.aar
andbindings.framework
as decribed in https://github.com/breez/breez - For Android:
- Symlink
breez.aar
to theandroid/app/libs/
directory - Create a firebase Android app using the firebase console
- Generate the
google-services.json
(on "Project settings" menu) and copy it to theandroid/app/src/client
directory
- For iOS:
- Copy the bindings.framework directory to the ios directory.
- Create a firebase iOS app using the firebase console
- Generate the GoogleServices-info.plist and copy it to ios/Runner directory
- Run
pod install
frombreezmobile/ios
- Flutter beta channel
- Install flutter Run these command to switch to beta channel:
- flutter channel beta
- flutter upgrade
Run
Now you can use the following commands to run in a connected device the client app or the pos or to build the corresponding apks:
- flutter run --flavor=client --target=lib/main.dart
- flutter run --flavor=pos --target=lib/main_pos.dart
- flutter build apk --target-platform=android-arm64 --flavor=client --debug --target=lib/main.dart
- flutter build apk --target-platform=android-arm64 --flavor=pos --debug --target=lib/main_pos.dart
Running on testnet
Modify the files under the conf/
directory:
# breez.conf
-network=mainnet
+network=testnet
-peer=btcd-mainnet.lightning.computer
+peer=btcd-testnet.lightning.computer
# lnd.conf
-neutrino.connect=btcd-mainnet.lightning.computer
+neutrino.connect=btcd-testnet.lightning.computer
After the initial sync, go to the Developer menu, get an address to fund with testnet coins with newaddress p2wkh
, then fund it, and use connect 03d[email protected]3.16.119.191:9735
then openchannel --private --conf_target 1 03d5e17a3c213fe490e1b0c389f8cfcfcea08a29717d50a9f453735e0ab2a7c003 90000
to open a channel to that public node (adjust the amounts and the node id/address if you wish).