/blixt-wallet

Bitcoin Lightning Wallet with focus on usability and user experience

Primary LanguageTypeScriptMIT LicenseMIT

Blixt Lightning Wallet

Get it on Google Play  Download on the App Store

Blixt Wallet is an open source Lightning Bitcoin Wallet for Android with focus on usability and user experience, powered by lnd and Neutrino SPV.

Blixt Lightning Wallet screenshot

Features

  • Embedded lnd with Neutrino
  • Descriptive and clean transaction log
  • Receive payments
  • Autopilot
  • Pincode
  • Fingerprint
  • Optional Recipient/Sender name that will be displayed on transactions
  • Optional "Payer" field for bookkeeping when creating invoice
  • Scheduled sync of chain background job
  • Local channel backup
  • LNURL support (all sub-protocols: pay, channel, auth and withdraw)
  • Channel backup to Google Drive (Android) and iCloud (iOS)
  • WebLN browser
  • Support for Multi-Part Payments (MPP)
  • Integrated Tor support
  • NFC
  • WatchTower
  • URL Payments
  • Pay to Username

Build Steps

Blixt targets three platforms right now: Web, Android and iOS.

The web target is only used for prototyping and is not a real wallet.

Web

The easiest way to build Blixt is to build the web version, because you only need Node+Yarn installed and you don't have to compile lnd as you would have for the native targets.

The web version is not used as a real wallet and is only used for fast prototyping. It's useful if you want to make design and GUI changes.

  • Install Node and Yarn
  • Install Node packages: yarn
  • Generate proto files: yarn gen-proto
  • Start the web server: yarn web

Android

To start the application:

  • Run: yarn start-metro
  • Run: yarn android:mainnet-debug or yarn android:testnet-debug

iOS

The iPhone/iOS version is still work in progress.

To build the iOS version, macOS is required. You also need an Apple Developer account, although you do not need to be enrolled in the Developer Program.

  • Install XCode, Node and Yarn
  • Build lnd for iOS by following the steps in build-ios-framework.md
  • Install Node packages: yarn
  • Generate proto files: yarn gen-proto
  • Install CocoaPods libs: cd ios && pod install
  • Setup team signing:
    • Open ios/BlixtWallet/BlixtWallet.xcworkspace with XCode
    • Login with your Apple Developer account if XCode asks you to
    • Click on BlixtWallet in the left column
    • Click on the Signing & Capabilities tab
    • Choose your Team in the dropdown and choose a new unique Bundle Identifier (cannot be the same as the ones released on the App Store). Do this for every configuration

To start the application:

  • Run: yarn start-metro
  • Run: yarn ios:mainnet-debug --device "<your device name>" or build from XCode

Commit and Code-Style

Follow the code style of the file you are working in. For commits, make descriptive and atomic git commits.

License

MIT