No description
Find a file
Elle Mouton 03712e6067
accounts: add an IDFromCaveates helper
And use that from the existing accountFromMacaroon helper (which will
then test the new helper by proxy).

We add this helper so that we can use it later on from the sessions
package where we want to extract an account ID from a caveat (we wont
have a full macaroon available).
2025-03-04 13:43:13 +02:00
.github .github: run itests against all types of account stores 2025-02-21 11:18:36 -03:00
.vscode vscode: replace deprecated boolean with string 2024-11-07 13:31:30 +01:00
accounts accounts: add an IDFromCaveates helper 2025-03-04 13:43:13 +02:00
app session+lnrpc: add StateReserved and delete these on start up 2025-02-19 12:09:27 -03:00
autopilotserver golangci: enable line length linter 2025-02-13 15:50:48 +02:00
autopilotserverrpc mod: bump net dep to v0.33.0 2025-01-21 10:59:01 +02:00
cmd multi: move macaroon helpers to macaroons dir 2025-02-09 10:37:40 +02:00
db db: SQL boilerplate code 2025-01-29 16:37:20 +02:00
docs docs: add release notes 2025-02-25 16:25:27 +02:00
firewall session+firewall: pass context to GetSessionByID 2025-02-28 09:26:02 +02:00
firewalldb session: pass contexts through to all IDToGroupIndex methods 2025-02-28 09:26:02 +02:00
itest session: use error variables 2025-02-27 08:07:51 +02:00
litclient litclient: add taprpc packages to Registrations 2024-12-19 21:21:39 +01:00
litrpc session+lnrpc: add StateReserved and delete these on start up 2025-02-19 12:09:27 -03:00
macaroons session: move MacaroonBaker to macaroons package 2025-02-09 10:56:23 +02:00
make itest: run itests against chosen backend 2025-02-21 11:18:35 -03:00
perms make+perms: allow itest to run with dev build tag 2024-11-07 09:39:16 +01:00
proto session+lnrpc: add StateReserved and delete these on start up 2025-02-19 12:09:27 -03:00
queue terminal+queue: add concurrent error queue 2022-10-15 09:05:04 +02:00
rpcmiddleware golangci: enable line length linter 2025-02-13 15:50:48 +02:00
rules chore: fix some typos in comment 2025-01-20 19:57:29 +08:00
scripts db/sqlc: add account related tables and queries 2025-01-29 16:37:20 +02:00
session session+terminal: give session Store access to the accounts store 2025-03-04 13:43:13 +02:00
status status: return error if subserver already registered 2024-10-21 10:25:06 +02:00
subservers golangci: enable line length linter 2025-02-13 15:50:48 +02:00
tools build(deps): bump golang.org/x/crypto from 0.19.0 to 0.31.0 in /tools 2024-12-11 23:45:04 +00:00
.dockerignore cmd: rename binary to litd 2020-07-21 22:10:33 +02:00
.gitattributes chore: fix generated code being included in language stats 2020-12-11 18:00:16 -05:00
.gitignore .gitignore: add GoLand+VSCode files 2024-10-23 14:32:18 +02:00
.golangci.yml config: introduce the concept of DevConfig 2025-02-21 11:17:21 -03:00
.prettierrc docs: reformat readme markdown 2020-06-13 00:39:59 -04:00
app.go multi: add support for building without UI 2024-08-14 13:33:38 +02:00
app_noui.go multi: add support for building without UI 2024-08-14 13:33:38 +02:00
config.go config: introduce the concept of DevConfig 2025-02-21 11:17:21 -03:00
config_dev.go config: Postgres and SQLite config options for accounts to dev build 2025-02-21 11:17:54 -03:00
config_prod.go config: introduce the concept of DevConfig 2025-02-21 11:17:21 -03:00
deps.go multi: dockerize tools 2022-10-19 10:57:18 +02:00
dev.Dockerfile dev.Dockerfile: allow forcing a specific taproot-assets version through a build argument 2024-12-19 21:21:40 +01:00
Dockerfile docker: pin all docker images with their hash 2024-10-23 14:53:32 +02:00
go.mod mod: bump lnd to v0.18.5-beta and tapd to v0.5.1 2025-02-12 11:04:33 +01:00
go.sum mod: bump lnd to v0.18.5-beta and tapd to v0.5.1 2025-02-12 11:04:33 +01:00
gzip.go multi: rename golang and make files to lightning-terminal 2020-07-21 22:06:15 +02:00
LICENSE docs: add MIT license 2021-07-16 18:27:27 -04:00
lnd_connection.go multi: split out LND connection from rpcProxy 2023-05-01 00:15:56 -07:00
log.go db: SQL boilerplate code 2025-01-29 16:37:20 +02:00
Makefile db/sqlc: add account related tables and queries 2025-01-29 16:37:20 +02:00
README.md docs+README: update readme and release notes 2025-02-12 11:36:08 +01:00
rpc_proxy.go multi: move macaroon helpers to macaroons dir 2025-02-09 10:37:40 +02:00
session_rpcserver.go accounts: add an IDFromCaveates helper 2025-03-04 13:43:13 +02:00
sqlc.yaml db/sqlc: add account related tables and queries 2025-01-29 16:37:20 +02:00
terminal.go session+terminal: give session Store access to the accounts store 2025-03-04 13:43:13 +02:00
version.go version: bump version to v0.14.1-alpha 2025-02-12 11:36:08 +01:00

Lightning Terminal (LiT)

CI

Lightning Terminal (LiT) is a browser-based interface for managing channel liquidity.

screenshot

Features

  • Visualize your channels and balances
  • Perform submarine swaps via the Lightning Loop service
  • Classify channels according to your node's operating mode
  • Run a single binary that integrates loopd, poold and faraday daemons all in one
  • Access a preview release of the Pool UI
  • Use Pool to earn sats by opening channels to those needing inbound liquidity

Installation

Download the latest binaries from the releases page.

Additionally, you can find detailed instructions on the docs.lightning.engineering page.

Execution

Run Lightning Terminal with a local lnd instance:

⛰  ./litd --uipassword=UP48lm4Vjqxy<change_this_or_you_will_get_robbed>

Visit https://localhost:8443 to access Terminal.

Note that a password with a minimum of 8 characters is required to run Lightning Terminal. In a production environment, it's recommended that you store this password as an environment variable to avoid it being recorded in the command history.

To use LiT with a remote lnd instance please follow these instructions. If you would like to replace your existing LND instance with the one integrated within LiT please see configuring Terminal.

LND

Note that LiT requires lnd to be built with all of its subservers and requires running at least v0.11.0. Download the latest official release binary or build lnd from source by following the installation instructions. If you choose to build lnd from source, use the following command to enable all the relevant subservers:

⛰  make install tags="signrpc walletrpc chainrpc invoicesrpc"

Interaction

If you plan to run LiT on a remote machine but access the web-interface from your computer you may not want to deal with self-signed certificate browser warnings. To avoid these warnings configure the HTTP server to use a certificate from Let's Encrypt. View the Let's Encrypt Configuration doc for instructions on how to configure this.

Upgrading

If you used command line arguments with previous versions then you don't need to change anything when upgrading.

To upgrade from v0.1.1-alpha or earlier simply create a lit.conf file in your LiT directory. The default location LiT uses depends on your operating system:

  • MacOS: ~/Library/Application Support/Lit/lit.conf
  • Linux: ~/.lit/lit.conf
  • Windows: ~/AppData/Roaming/Lit/lit.conf

Move all the configuration settings specific to LiT from lnd.conf to lit.conf and remove any previous LiT-specific customizations from the configuration settings in lnd.conf. Note that any section headers ([ Example ]) in lit.conf should be removed or changed to comments (# Example).

Usage

Read the walkthrough document to learn more about how to use LiT.

Troubleshooting

If you encounter any issues please see our troubleshooting guide.

Build from source

If youd prefer to compile from source code please follow these instructions.

Compatibility

Full Lightning Terminal functionality can be dependent on running a compatible version of lnd. View the table below to ensure that you run a compatible version of lnd with the relevant litd release.

This version compatibility dependency table is only relevant when running litd in remote mode (meaning that lnd-mode=remote is set). It shows the minimum lnd version that can be used with different versions of litd (LiT). The bundled version will always come with the correct, compatible versioning.

LiT LND
v0.14.1-alpha v0.18.5-beta
v0.14.0-alpha v0.18.4-beta
v0.13.6-alpha v0.17.1-beta
v0.13.5-alpha v0.17.1-beta
v0.13.4-alpha v0.17.1-beta
v0.13.3-alpha v0.17.1-beta
v0.13.2-alpha v0.17.0-beta
v0.13.1-alpha v0.17.0-beta
v0.13.0-alpha v0.17.0-beta
v0.12.5-alpha v0.17.0-beta
v0.12.4-alpha v0.17.0-beta
v0.12.3-alpha v0.16.0-beta
v0.12.2-alpha v0.16.0-beta
v0.12.1-alpha v0.16.0-beta
v0.12.0-alpha v0.16.0-beta
v0.11.0-alpha v0.16.0-beta
v0.10.5-alpha v0.16.0-beta
v0.10.4-alpha v0.16.0-beta
v0.10.2-alpha v0.16.0-beta
v0.10.1-alpha v0.16.0-beta
v0.10.0-alpha v0.16.0-beta
v0.9.2-alpha v0.16.0-beta
v0.9.1-alpha v0.16.0-beta
v0.9.0-alpha v0.16.0-beta
v0.8.6-alpha v0.15.4-beta
v0.8.5-alpha v0.15.4-beta
v0.8.4-alpha v0.15.1-beta
v0.8.3-alpha v0.15.1-beta
v0.8.2-alpha v0.15.1-beta
v0.8.1-alpha v0.15.1-beta
v0.8.0-alpha v0.15.1-beta
v0.7.1-alpha v0.14.3-beta
v0.7.0-alpha v0.14.3-beta
v0.6.7-alpha v0.13.3-beta
v0.6.6-alpha v0.13.3-beta
v0.6.5-alpha v0.13.3-beta
v0.6.4-alpha v0.13.3-beta
v0.6.3-alpha v0.13.3-beta
v0.6.2-alpha v0.13.3-beta
v0.6.1-alpha v0.13.3-beta
v0.6.0-alpha v0.13.3-beta
v0.5.2-alpha v0.12.0-beta
v0.5.1-alpha v0.12.0-beta
v0.5.0-alpha v0.12.0-beta
v0.4.1-alpha v0.11.1-beta
v0.4.0-alpha v0.11.1-beta
v0.3.4-alpha v0.11.1-beta
v0.3.3-alpha v0.11.1-beta
v0.3.2-alpha v0.11.1-beta
v0.3.1-alpha v0.11.1-beta
v0.3.0-alpha v0.11.1-beta
v0.2.0-alpha v0.11.0-beta

LiT offers two main operating modes, one in which lnd is running inside the LiT process (called "lnd integrated mode", set by lnd-mode=integrated config option) and one in which lnd is running in a standalone process on the same or remote machine (called "lnd remote mode", set by lnd-mode=remote config option).

In addition to those main modes, the individual bundled daemons (Faraday, Loop and Pool) can be toggled to be integrated or remote as well, or as disabled. This offers a large number of possible configuration combinations, of which not all are fully supported due to technical reasons.

The following table shows the supported combinations:

lnd-mode=integrated lnd-mode=remote
faraday-mode=integrated X X
loop-mode=integrated X X
pool-mode=integrated X X
taproot-assets-mode=integrated X X
faraday-mode=remote X
loop-mode=remote X
pool-mode=remote X
taproot-assets-mode=remote X
faraday-mode=disable X X
loop-mode=disable X X
pool-mode=disable X X
taproot-assets-mode=disable X X
lnd running in "stateless init" mode X

NOTE: Taproot Assets Channel functionality is only available when both lnd and tapd are running in the same process (by setting both lnd-mode=integrated and taproot-assets-mode=integrated). Remote mode support will be added in the future.

Daemon Versions packaged with LiT

LiT LND Loop Faraday Pool Taproot Assets
v0.14.1-alpha v0.18.5-beta v0.29.0-beta v0.2.14-alpha v0.6.5-beta v0.5.1-alpha
v0.14.0-alpha v0.18.4-beta v0.29.0-beta v0.2.13-alpha v0.6.5-beta v0.5.0-alpha
v0.13.6-alpha v0.18.3-beta v0.28.8-beta v0.2.13-alpha v0.6.5-beta v0.4.1-alpha
v0.13.5-alpha v0.18.3-beta v0.28.8-beta v0.2.13-alpha v0.6.5-beta v0.4.1-alpha
v0.13.4-alpha v0.18.3-beta v0.28.7-beta v0.2.13-alpha v0.6.5-beta v0.4.1-alpha
v0.13.3-alpha v0.18.2-beta v0.28.6-beta v0.2.13-alpha v0.6.5-beta v0.4.1-alpha
v0.13.2-alpha v0.18.2-beta v0.28.5-beta v0.2.13-alpha v0.6.5-beta v0.3.3-alpha
v0.13.1-alpha v0.18.1-beta v0.28.5-beta v0.2.13-alpha v0.6.5-beta v0.3.3-alpha
v0.13.0-alpha v0.18.0-beta v0.28.5-beta v0.2.13-alpha v0.6.5-beta v0.3.3-alpha
v0.12.5-alpha v0.17.5-beta v0.28.1-beta v0.2.13-alpha v0.6.4-beta v0.3.3-alpha
v0.12.4-alpha v0.17.4-beta v0.28.0-beta v0.2.13-alpha v0.6.4-beta v0.3.3-alpha
v0.12.3-alpha v0.17.4-beta v0.27.0-beta v0.2.11-alpha v0.6.4-beta v0.3.3-alpha
v0.12.2-alpha v0.17.3-beta v0.26.6-beta v0.2.11-alpha v0.6.4-beta v0.3.2-alpha
v0.12.1-alpha v0.17.1-beta v0.26.5-beta v0.2.11-alpha v0.6.4-beta v0.3.1-alpha
v0.12.0-alpha v0.17.0-beta v0.26.4-beta v0.2.11-alpha v0.6.4-beta v0.3.0-alpha
v0.11.0-alpha v0.17.0-beta v0.26.3-beta v0.2.11-alpha v0.6.4-beta v0.2.3-alpha
v0.10.5-alpha v0.16.4-beta v0.26.2-beta v0.2.11-alpha v0.6.4-beta v0.2.3-alpha
v0.10.4-alpha v0.16.4-beta v0.25.2-beta v0.2.11-alpha v0.6.4-beta v0.2.3-alpha
v0.10.2-alpha v0.16.4-beta v0.25.2-beta v0.2.11-alpha v0.6.4-beta v0.2.2-alpha
v0.10.1-alpha v0.16.3-beta v0.24.1-beta v0.2.11-alpha v0.6.4-beta v0.2.0-alpha
v0.10.0-alpha v0.16.2-beta v0.23.0-beta v0.2.11-alpha v0.6.2-beta v0.2.0-alpha
v0.9.2-alpha v0.16.2-beta v0.23.0-beta v0.2.11-alpha v0.6.2-beta n/a
v0.9.1-alpha v0.16.1-beta v0.23.0-beta v0.2.11-alpha v0.6.2-beta n/a
v0.9.0-alpha v0.16.0-beta v0.22.0-beta v0.2.10-alpha v0.6.2-beta n/a
v0.8.6-alpha v0.15.5-beta v0.21.0-beta v0.2.9-alpha v0.6.1-beta n/a
v0.8.5-alpha v0.15.5-beta v0.20.2-beta v0.2.9-alpha v0.6.1-beta n/a
v0.8.4-alpha v0.15.5-beta v0.20.1-beta v0.2.9-alpha v0.5.8-alpha n/a
v0.8.3-alpha v0.15.4-beta v0.20.1-beta v0.2.8-alpha v0.5.8-alpha n/a
v0.8.2-alpha v0.15.3-beta v0.20.1-beta v0.2.8-alpha v0.5.8-alpha n/a
v0.8.1-alpha v0.15.2-beta v0.20.1-beta v0.2.8-alpha v0.5.8-alpha n/a
v0.8.0-alpha v0.15.1-beta v0.20.1-beta v0.2.8-alpha v0.5.8-alpha n/a
v0.7.1-alpha v0.15.0-beta v0.19.1-beta v0.2.8-alpha v0.5.7-alpha n/a
v0.7.0-alpha v0.15.0-beta v0.19.1-beta v0.2.8-alpha v0.5.7-alpha n/a
v0.6.7-alpha v0.14.3-beta v0.18.0-beta v0.2.7-alpha v0.5.6-alpha n/a
v0.6.6-alpha v0.14.3-beta v0.18.0-beta v0.2.7-alpha v0.5.6-alpha n/a
v0.6.5-alpha v0.14.2-beta v0.15.1-beta v0.2.7-alpha v0.5.5-alpha n/a
v0.6.4-alpha v0.14.2-beta v0.15.1-beta v0.2.7-alpha v0.5.4-alpha n/a
v0.6.3-alpha v0.14.2-beta v0.15.1-beta v0.2.7-alpha v0.5.4-alpha n/a
v0.6.2-alpha v0.14.1-beta v0.15.1-beta v0.2.7-alpha v0.5.4-alpha n/a
v0.6.1-alpha v0.14.1-beta v0.15.1-beta v0.2.7-alpha v0.5.2-alpha n/a
v0.5.3-alpha v0.13.3-beta v0.14.1-beta v0.2.6-alpha v0.5.0-alpha n/a
v0.5.2-alpha v0.13.3-beta v0.14.1-beta v0.2.6-alpha v0.5.0-alpha n/a
v0.5.1-alpha v0.13.0-beta v0.14.1-beta v0.2.6-alpha v0.5.0-alpha n/a
v0.5.0-alpha v0.13.0-beta v0.14.1-beta v0.2.6-alpha v0.5.0-alpha n/a
v0.4.1-alpha v0.12.1-beta v0.11.4-beta v0.2.3-alpha v0.4.4-alpha n/a
v0.4.0-alpha v0.12.0-beta v0.11.2-beta v0.2.3-alpha v0.4.3-alpha n/a
v0.3.4-alpha v0.11.1-beta v0.11.2-beta v0.2.2-alpha v0.3.4-alpha n/a
v0.3.3-alpha v0.11.1-beta v0.11.2-beta v0.2.2-alpha v0.3.4-alpha n/a
v0.3.2-alpha v0.11.1-beta v0.11.1-beta v0.2.2-alpha v0.3.4-alpha n/a
v0.3.1-alpha v0.11.1-beta v0.11.1-beta v0.2.2-alpha v0.3.3-alpha n/a
v0.3.0-alpha v0.11.1-beta v0.11.0-beta v0.2.2-alpha v0.3.2-alpha n/a
v0.2.0-alpha v0.11.1-beta v0.10.0-beta v0.2.1-alpha n/a n/a
v0.1.1-alpha v0.11.0-beta v0.8.1-beta v0.2.0-alpha n/a n/a
v0.1.0-alpha v0.10.3-beta v0.6.5-beta v0.2.0-alpha n/a n/a