All Projects → breez → Lightninglib

breez / Lightninglib

Licence: mit
lightninglib is a fork of lnd which aims to be usable as a go library inside any application, including mobile apps.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Lightninglib

Polar
One-click Bitcoin Lightning networks for local app development & testing
Stars: ✭ 265 (+2309.09%)
Mutual labels:  bitcoin, lightning, lightning-network
Electrum
Electrum Bitcoin Wallet
Stars: ✭ 5,353 (+48563.64%)
Mutual labels:  bitcoin, lightning, lightning-network
Umbrel Os
Run Umbrel Bitcoin and Lightning node on a Raspberry Pi in one click
Stars: ✭ 132 (+1100%)
Mutual labels:  bitcoin, lightning, lightning-network
Joule Extension
Lightning payments extension for Chrome
Stars: ✭ 303 (+2654.55%)
Mutual labels:  bitcoin, lightning, lightning-network
Lnd
Lightning Network Daemon ⚡️
Stars: ✭ 5,623 (+51018.18%)
Mutual labels:  bitcoin, lightning, lightning-network
Phoenix
Phoenix is a non custodial Bitcoin wallet using Lightning to send/receive payments.
Stars: ✭ 129 (+1072.73%)
Mutual labels:  bitcoin, lightning, lightning-network
Lncli Web
Light-weight web client for the lnd daemon written in NodeJS / Angular.
Stars: ✭ 181 (+1545.45%)
Mutual labels:  bitcoin, lightning, lightning-network
Blixt Wallet
Bitcoin Lightning Wallet with focus on usability and user experience
Stars: ✭ 40 (+263.64%)
Mutual labels:  bitcoin, lightning, lightning-network
Spark Wallet
⚡️ A minimalistic wallet GUI for c-lightning, accessible over the web or through mobile and desktop apps.
Stars: ✭ 215 (+1854.55%)
Mutual labels:  bitcoin, lightning, lightning-network
Lndhub
Wrapper for Lightning Network Daemon. It provides separate accounts and trust minimization for end users
Stars: ✭ 203 (+1745.45%)
Mutual labels:  bitcoin, lightning, lightning-network
Lndmanage
Channel management tool for lightning network daemon (LND) operators.
Stars: ✭ 114 (+936.36%)
Mutual labels:  bitcoin, lightning, lightning-network
Umbrel
A personal Bitcoin and Lightning node designed for everyone
Stars: ✭ 508 (+4518.18%)
Mutual labels:  bitcoin, lightning, lightning-network
Lightning Rfc
Lightning Network Specifications
Stars: ✭ 1,224 (+11027.27%)
Mutual labels:  bitcoin, lightning, lightning-network
Awesome Bitcoin Payment Processors
🌟 A curated list of Bitcoin payment processors enabling merchants, businesses and nonprofits to accept Bitcoin payments.
Stars: ✭ 129 (+1072.73%)
Mutual labels:  bitcoin, lightning, lightning-network
Lightning Faucet
A faucet for the Lightning Network!
Stars: ✭ 56 (+409.09%)
Mutual labels:  bitcoin, lightning, lightning-network
Zeus
A mobile Bitcoin/Lightning app for lnd, c-lightning, and Eclair node operators ⚡️
Stars: ✭ 175 (+1490.91%)
Mutual labels:  bitcoin, lightning, lightning-network
Ln Service
Node.js interface to LND
Stars: ✭ 191 (+1636.36%)
Mutual labels:  bitcoin, lightning, lightning-network
Eclair Mobile
An Android wallet for the Lightning Network
Stars: ✭ 231 (+2000%)
Mutual labels:  bitcoin, lightning, lightning-network
Eclair
A scala implementation of the Lightning Network.
Stars: ✭ 892 (+8009.09%)
Mutual labels:  bitcoin, lightning, lightning-network
Cyphernode
Modular Bitcoin full-node microservices API server architecture and utilities toolkit to build scalable, secure and featureful apps and services without trusted third parties
Stars: ✭ 273 (+2381.82%)
Mutual labels:  bitcoin, lightning-network

lightninglib

lightninglib is a fork of lnd which aims to be usable as a go library inside any application, including mobile apps.

Preliminaries

This project uses dep to manage dependencies as well as to provide reproducible builds.

go get -u github.com/golang/dep/cmd/dep

Installing

go get -d github.com/breez/lightninglib
cd $GOPATH/src/github.com/breez/lightninglib
dep ensure -v

Optionally, if you want to build lnd and lncli

go install -v ./cmd/...

Using the library

You can for instance use lightninglib in a mobile app using gomobile.

First, create a file containing the following code:

package lightningmobile

import (
        "fmt"
        "os"

        "github.com/breez/lightninglib/daemon"
)

func Start(appDir string) {
        go func() {
                if err := daemon.LndMain([]string{"lightningmobile", "--lnddir", appDir}); err != nil {
                        fmt.Fprintln(os.Stderr, err)
                        os.Exit(1)
                }
        }()
}

Then run:

gomobile bind -target=android -tags="android" -o lightningmobile.aar lightningmobile

You can now use the aar file in your android app.

In https://github.com/golang/go/wiki/Mobile you'll find more informations about using go in mobile apps.

Updating

To update your version of lightninglib to the latest version run the following commands:

cd $GOPATH/src/github.com/breez/lightninglib
git pull
dep ensure -v
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].