Skip to content

Commit

Permalink
lnd backend implementation for iOS
Browse files Browse the repository at this point in the history
This commit adds an lnd ("LndMobile") backend for the iOS build.
It supports all lnd RPC calls the wallet uses, however it's currently
missing some native module functions (src/lndmobile/LndMobile.d.ts specify these).

Scheduled sync job is not included in this iteration.
  • Loading branch information
hsjoberg committed Jan 6, 2021
1 parent ae6acee commit 960efe8
Show file tree
Hide file tree
Showing 127 changed files with 19,706 additions and 3,985 deletions.
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -73,3 +73,7 @@ google-services.json

# iOS
/ios/Pods

# Lnd binaries
android/lndmobile/Lndmobile.aar
ios/Lndmobile.framework
7 changes: 4 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ powered by lnd and Neutrino SPV.
- [x] Scheduled sync of chain background job
- [x] Local channel backup
- [x] [LNURL](https://github.com/btcontract/lnurl-rfc) support (all sub-protocols: pay, channel, auth and withdraw)
- [x] Channel backup to Google Drive
- [x] Channel backup to Google Drive (Android) and iCloud (iOS)
- [x] [WebLN](https://webln.dev/) browser
- [x] Support for [Multi-Part Payments (MPP)](https://lightning.engineering/posts/2020-05-07-mpp/)
- [x] Integrated Tor support
Expand Down Expand Up @@ -57,11 +57,12 @@ To start the application:

### iOS

_The iPhone/iOS version is still work in progress and is not yet stable nor fully working._
_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](https://developer.apple.com/xcode/), [Node](https://nodejs.org) and [Yarn](https://classic.yarnpkg.com/)
- Build lnd for iOS by following the steps in [build-ios-framework.md](build-ios-framework.md)
- Install Node packages: `yarn`
- Generate proto files: `yarn gen-proto`
- Install CocoaPods libs: `cd ios && pod install`
Expand All @@ -74,7 +75,7 @@ To build the iOS version, macOS is required. You also need an Apple Developer ac

To start the application:
- Run: `yarn start-metro`
- Run: `yarn ios:mainnet-fakelnd-debug`
- Run: `yarn ios:mainnet-debug --device "<your device name>"` or build from XCode

## Commit and Code-Style

Expand Down
Loading

0 comments on commit 960efe8

Please sign in to comment.