#LightningHackdayMUC Sponsored by
https://shiftcrypto.ch Hardware wallet
https://www.nodl.it Easy bitcoin Lighting full node
https://www.puzzle.ch
https://fulgur.ventures VC focusing on Lightning network startups
http://lightningpay.com high liquidity, high capacity channels to merchants and ent...
## WCN Episode Summary: Johan Halseth - Building Mobile Lightning Network Apps
This 2019 WCN episode features Johan Halseth discussing the process of building mobile Lightning Network applications using LND and neutrino. Halseth champions the Go programming language, noting its tooling, cross-platform compatibility, and the fact that both LND and neutrino are written in Go.
Main Topics:
- Integrating LND into mobile apps using GoMobile.
- Challenges of connecting mobile apps to LND (GRPC, Unix sockets, REST APIs).
- Developing a hybrid approach using a Go API based on GRPC specifications and mobile bindings.
- Generating Swift code from LND RPC specifications using GRPC and ProtoBuff.
- Addressing limitations of in-memory buffers in iOS and other languages.
- Designing for frequent offline periods due to the impracticality of running a full Bitcoin node on mobile.
- Flexibility in app design – local LND node or connection to a remote server.
- Importance of handling gossip data and "graph syncing."
Key Quotes:
- "Running a full Bitcoin node in the background on a mobile device is not feasible."
- "Payments can sometimes succeed with slightly outdated data."
- (Implied) The team is developing an app that runs a full LND node on both Android and iOS, with a shared codebase for the frontend.
People Mentioned:
- Johan Halseth
- GoMobile team
Bitcoin Price: Not mentioned.
The presentation detailed a complex solution involving generating APIs from ProtoBuff specifications, utilizing byte arrays for message passing, and leveraging GRPC over in-memory sockets to overcome platform limitations. The resulting architecture allows for a flexible approach, enabling apps to function either locally or connect to remote LND servers. The team is working towards a shared codebase for both Android and iOS.