selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
lndg logo

Self-host lndg

v1.11.1

Lightning Network node management and analytics GUI

ReleaseOpen SourceMIT
Updated9 hours ago
LanguagePython
Setup difficultyAdvanced
Stars
254
Port
8000 (HTTP web interface (container port))
Requires
LND (Lightning Network Daemon)
Install with Docker Compose
Main Dashboard viewMain Dashboard viewMain Dashboard viewMain Dashboard viewMain Dashboard viewMain Dashboard viewSeparate screens: Performance, Peers, BalancesSeparate screens: Performance, Peers, BalancesSeparate screens: Performance, Peers, BalancesSeparate screens: Performance, Peers, Balances

What is lndg?

LNDg is a web-based GUI for Lightning Network node operators running LND. It connects to an LND node via gRPC to provide analytics on channel performance, peer routing history, and node profitability. Key capabilities include automated channel rebalancing to maintain outbound liquidity on profitable routes, automatic fee adjustment based on channel performance, batch channel opening to reduce on-chain fees, watchtower management, and a REST API for programmatic access. It runs as a Django application with SQLite (default) or PostgreSQL, deployed via Docker Compose, manual Python virtualenv, or one-click installers on platforms like Umbrel and RaspiBlitz. The UI requires password login with an auto-generated admin account. The project is actively maintained with regular releases.

Should you self-host lndg?

lndg scores 49/100 on selfhost.directory (how scoring works) and ranks #25 of 42 in Cryptocurrency. It has 254 GitHub stars.

It shipped 2 stable releases in the past year. The latest, v1.11.1, came out on 27 September 2026. New versions land roughly every 2 months.

Setup is advanced: plan for several services and some ongoing maintenance. It is MIT-licensed and written mostly in Python.

Its closest alternative on selfhost.directory is Freqtrade (86/100, 56 064 stars). It scores higher overall, so compare the two before you pick. See lndg vs Freqtrade side by side.

Features

  • AR-Autopilot
  • Auto-Fees
  • Auto-Rebalancer
  • Batch Channel Opens
  • Channel Performance Analytics
  • HTLC Failure Stream
  • New Peer Suggestions
  • Password Protected Login
  • Peer Event Tracking
  • Peer Reconnection
  • REST API
  • Watchtower Management

lndg README

How to install lndg

Install lndg with Docker Compose

Docker, Docker Compose, running LND node
Environment variables
LND_TLS_PATH, LND_MACAROON_PATH, LND_DATABASE_PATH, LND_NETWORK, LND_RPC_SERVER, LND_MAX_MESSAGE

Clone the repository

git clone https://github.com/cryptosharks131/lndg.git

Change directory to the repository

cd lndg

Customize the docker-compose.yaml file

nano docker-compose.yaml

Build and deploy the Docker container in detached mode

docker-compose up -d

Retrieve the admin password for the initial login

cat data/lndg-admin.txt

Hosts LNDg at http://<your-machine-ip>:8889. Requires LND node with gRPC accessible.

How to configure lndg

  • AF-Enabled0Enable Auto-Fees globally

    Enable Auto-Fees globally

    values: 0, 1

  • AF-ExcessLimitOutbound liquidity (%) threshold for Excess Liquidity fee algorithm

    Outbound liquidity (%) threshold for Excess Liquidity fee algorithm

  • AF-FailedHTLCsMinimum daily failed HTLC count to trigger fee increase

    Minimum daily failed HTLC count to trigger fee increase

  • AF-IncrementBase increment size (ppm) for fee changes

    Base increment size (ppm) for fee changes

  • AF-LowLiqLimitOutbound liquidity (%) threshold for Low Liquidity fee algorithm

    Outbound liquidity (%) threshold for Low Liquidity fee algorithm

  • AF-MaxRateMaximum fee rate (ppm) Auto-Fees can set

    Maximum fee rate (ppm) Auto-Fees can set

  • AF-MinRateMinimum fee rate (ppm) Auto-Fees can set

    Minimum fee rate (ppm) Auto-Fees can set

  • AF-MultiplierMultiplies AF-Increment for larger fee adjustments

    Multiplies AF-Increment for larger fee adjustments

  • AF-UpdateHours24Minimum hours between AF adjustments for a channel

    Minimum hours between AF adjustments for a channel

  • ALLOWED_HOSTS['*']Allowed hostnames for Django

    Allowed hostnames for Django

  • AR-APDays7Days of historical data for Autopilot decisions

    Days of historical data for Autopilot decisions

  • AR-Autopilot0Automatically act on AR suggestions

    Automatically act on AR suggestions

    values: 0, 1

  • AR-Enabled0Enable Auto-Rebalancer globally

    Enable Auto-Rebalancer globally

    values: 0, 1

  • AR-Inbound%100Default inbound target for newly monitored channels

    Default inbound target for newly monitored channels

  • AR-MaxCost%65Maximum rebalance fee limit as percentage of target channel's outbound fee rate

    Maximum rebalance fee limit as percentage of target channel's outbound fee rate

  • AR-MaxFeeRate100Absolute maximum fee rate (ppm) allowed for rebalance

    Absolute maximum fee rate (ppm) allowed for rebalance

  • AR-Outbound%75Channels with more outbound liquidity than this are potential sources

    Channels with more outbound liquidity than this are potential sources

  • AR-Target%5Default rebalance amount as percentage of channel capacity

    Default rebalance amount as percentage of channel capacity

  • AR-Time5Maximum time (minutes) to search for a rebalance route

    Maximum time (minutes) to search for a rebalance route

  • AR-Variance0Randomly vary target rebalance amount by this percentage

    Randomly vary target rebalance amount by this percentage

  • AR-WaitPeriod30Time (minutes) to wait before retrying rebalance after failure

    Time (minutes) to wait before retrying rebalance after failure

  • AR-Workers1Number of parallel rebalance attempts

    Number of parallel rebalance attempts

  • CSRF_TRUSTED_ORIGINSTrusted origins for CSRF

    Trusted origins for CSRF

  • DATABASESSQLite3 at BASE_DIR/data/db.sqlite3Database configuration (SQLite3 default, PostgreSQL optional)

    Database configuration (SQLite3 default, PostgreSQL optional)

    values: sqlite3, postgresql

  • DEBUGFalseDjango debug mode

    Django debug mode

    values: True, False

  • LND_DATABASE_PATH~/.lnd/data/graph/<network>/channel.dbPath to LND channel.db for monitoring

    Path to LND channel.db for monitoring

  • LND_MACAROON_PATH~/.lnd/data/chain/bitcoin/<network>/admin.macaroonPath to LND admin macaroon file

    Path to LND admin macaroon file

  • LND_MAX_MESSAGE104857600Maximum gRPC message size

    Maximum gRPC message size

  • LND_NETWORKmainnetLND network (mainnet or testnet)

    LND network (mainnet or testnet)

    values: mainnet, testnet

  • LND_RPC_SERVERlocalhost:10009LND gRPC server address and port

    LND gRPC server address and port

  • LND_TLS_PATH~/.lnd/tls.certPath to LND TLS certificate file

    Path to LND TLS certificate file

  • LOGIN_REQUIREDTrueWhether password authentication is required

    Whether password authentication is required

    values: True, False

  • SECRET_KEYauto-generatedDjango secret key

    Django secret key

lndg releases & version history

More in Cryptocurrency

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…