Skip to content

BlueWallet/LndHub

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.15.4 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
625a6e9

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
doc
September 28, 2021 21:50
February 18, 2021 12:11
January 4, 2021 12:49
December 4, 2020 18:59
February 24, 2021 15:17
November 4, 2019 14:23
September 22, 2021 19:28
February 24, 2021 15:17
February 24, 2021 15:17
February 24, 2021 15:17
REL
February 10, 2023 18:52
January 4, 2021 12:49
OPS
August 12, 2020 16:45

LndHub

Wrapper for Lightning Network Daemon (lnd). It provides separate accounts with minimum trust for end users.

INSTALLATION

You can use those guides or follow instructions below:

git clone git@github.com:BlueWallet/LndHub.git
cd LndHub
npm i

Install bitcoind, lnd, and redis. Edit LndHub's config.js to set it up correctly. Copy the files admin.macaroon (for Bitcoin mainnet, usually stored in ~/.lnd/data/chain/bitcoin/mainnet/admin.macaroon) and tls.cert (usually stored in ~/.lnd/tls.cert) into the root folder of LndHub.

LndHub expects LND's wallet to be unlocked, if not — it will attempt to unlock it with the password stored in config.lnd.password. Don't forget to configure disk-persistence for redis (e.g., you may want to set appendonly to yes in redis.conf (see http://redis.io/topics/persistence for more information).

If you have no bitcoind instance, for example if you use neutrino, or you have no bitcoind wallet, for example if you use LND for wallet managment, you can remove the bitcoind settings from config.js. Please note that this feature is limited to Bitcoin, so you can't use it if you use any other cryptocurrency with LND (e.g., Litecoin).

Deploy to Heroku

Add config vars :

  • CONFIG : json serialized config object
  • MACAROON: hex-encoded admin.macaroon
  • TLSCERT: hex-encoded tls.cert

Run in docker

LndHub is available on Docker Hub as bluewalletorganization/lndhub. Please note that this requires a separate instance of redis and LND and optionally, bitcoind. You can also view Umbrel's implementation using docker-compose here.

Reference client implementation

Can be used in ReactNative or Nodejs environment

Tests

Acceptance tests are in https://github.com/BlueWallet/BlueWallet/blob/master/tests/integration/lightning-custodian-wallet.test.js

image

Responsible disclosure

Found critical bugs/vulnerabilities? Please email them to bluewallet@bluewallet.io Thanks!