lampo (lightning in Italian) is a experimental implementation of a tiny lightning node http://lampo.devcrew.cc
  • Rust 81.1%
  • Shell 14.3%
  • Zig 4%
  • Nix 0.2%
  • Dockerfile 0.2%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-10-08 21:04:36 +02:00
.github Remove CLN, FFI, lnprototest and python bindings 2026-10-02 07:43:39 +02:00
docker Remove CLN, FFI, lnprototest and python bindings 2026-10-02 07:43:39 +02:00
docs docs: add brainstorm for a VLS-ready modular signer 2026-10-02 00:34:57 +02:00
lampo-bdk-wallet common: add LampoSigner seam for pluggable signers 2026-10-02 00:34:57 +02:00
lampo-bitcoind/zig sim: start plugins without setsid 2026-10-02 07:35:30 +02:00
lampo-chain chain: decode block headers from their serialization 2026-10-07 17:23:34 +02:00
lampo-cli httpd: call the proxy over elite-rpc async 2026-10-01 03:04:47 +02:00
lampo-common httpd: report the channel opener and funding outpoint, and list peers 2026-10-08 21:04:36 +02:00
lampo-httpd httpd: report the channel opener and funding outpoint, and list peers 2026-10-08 21:04:36 +02:00
lampo-lnd lnd: accept LND snake_case REST fields and string enums 2026-09-15 21:48:20 -07:00
lampo-plugin test: start the bitcoind plugin in the harness 2026-10-02 07:35:30 +02:00
lampo-plugin-common test: start the bitcoind plugin in the harness 2026-10-02 07:35:30 +02:00
lampo-testing test: start the bitcoind plugin in the harness 2026-10-02 07:35:30 +02:00
lampod httpd: report the channel opener and funding outpoint, and list peers 2026-10-08 21:04:36 +02:00
lampod-cli test: start the bitcoind plugin in the harness 2026-10-02 07:35:30 +02:00
plugin-sdk test: start the bitcoind plugin in the harness 2026-10-02 07:35:30 +02:00
simulations Remove CLN, FFI, lnprototest and python bindings 2026-10-02 07:43:39 +02:00
tests/tests httpd: report the channel opener and funding outpoint, and list peers 2026-10-08 21:04:36 +02:00
tools Remove CLN, FFI, lnprototest and python bindings 2026-10-02 07:43:39 +02:00
.gitignore plugin: serve Zig plugins over Zrpc 2026-10-02 07:35:30 +02:00
AGENTS.md sim: gate Phase 2 on lampo send/recv coverage 2026-09-16 03:18:26 +02:00
Cargo.lock build(deps): bump tokio-rustls from 0.26.4 to 0.26.6 2026-10-05 20:23:31 +02:00
Cargo.toml build: drop the zig bitcoind plugin from the cargo workspace 2026-10-02 07:35:30 +02:00
CLAUDE.md sim: gate Phase 2 on lampo send/recv coverage 2026-09-16 03:18:26 +02:00
CODEOWNERS Remove CLN, FFI, lnprototest and python bindings 2026-10-02 07:43:39 +02:00
CONTRIBUTING.md docs: add the contribute guide 2024-06-19 12:38:12 +02:00
cypherpunk-manifesto.txt docs: add cypherpunk-manifesto 2025-01-02 22:10:55 +01:00
DCO meta: add DCO 2023-07-25 18:42:59 +02:00
deny.toml ldk: supporting async at the API level 2025-03-14 14:51:35 +01:00
flake.lock nix: upgrade nix build 2025-03-14 14:51:35 +01:00
flake.nix Remove CLN, FFI, lnprototest and python bindings 2026-10-02 07:43:39 +02:00
lampo.example.conf ln: do not announce a loopback address 2026-10-02 00:05:15 +02:00
LICENSE Initial commit 2022-08-16 01:03:45 +02:00
Makefile plugin: serve Zig plugins over Zrpc 2026-10-02 07:35:30 +02:00
README.md Remove CLN, FFI, lnprototest and python bindings 2026-10-02 07:43:39 +02:00
rust-toolchain flake: use rustup inside nix flake 2024-06-29 08:41:51 -04:00
SECURITY.md Remove CLN, FFI, lnprototest and python bindings 2026-10-02 07:43:39 +02:00

Lampo

Fast and modular lightning network implementation for all usages, written in Rust.

Project Homepage

Crates

This is the complete list of crates supported right now:

Crate Description Version
lampod-cli Lampo Daemon command line interface to run the daemon unrelated
lampo-cli Simple Lampo command line interface to interact with the daemon unrelated

How to Install

To install all the requirements and the Lampo binary, you need to have rust installed, and then run the following command:

make install

After you have lampod-cli and lampo-cli available, the first time you run lampod-cli with signet network, it will create a new wallet:

➜  ~ lampod-cli --network signet
✓ Wallet Generated, please store these words in a safe way
 wallet-keys  maple have fitness decide food joy flame coast stereo front grab stumble

Note

Store your wallet words securely. You can use them later to restore the wallet with --restore-wallet. If you do not store your words anywhere, your funds will be lost the next time Lampo starts!

The second time you run the same command, it will start the Lampo daemon (lampod), which will show continuous logs of the node's activity:

➜  ~ lampod-cli --network signet
[2025-08-27T10:15:23Z INFO  lampod] WARN lampod_cl1 Loading from existing wallet. [lampod-cli/src/main.rs:159] 
... (continuous log output) ...

Please note that you need to have a lampo.conf in the path ~/.lampo/signet. Run the following command to use the example config file:

cp lampo.example.conf ~/.lampo/signet/lampo.conf

A newly generated wallet jumps its checkpoint to the chain tip (fast-sync, on by default) so it does not scan from genesis. A mnemonic restore never takes that automatic jump, even when its local database is new, because the seed may own historical funds. Use reindex=<height> in lampo.conf for a known birthday.

Then you can query the node with the following command:

➜  ~ lampo-cli --network signet getinfo
{
  "node_id": "035b889551a44e502cd0cd6657acf067336034986cd6639b222cd4be563a7fc205",
  "peers": 0,
  "channels": 0
}

To run integration tests:

make integration

Simulation

Pre-production soak harness lives in simulations/ (regtest only). See simulations/README.md, AGENTS.md, and CLAUDE.md for Phase 1 recovery/stress and Phase 2 N-node chaos soak gates.

Contributing guidelines

Please read our Contributing guide.

Community

Determined to maintain clarity, we’ve chosen specific channels for communication:

  • Developers, join us on Zulip.
  • Community members, our Twitter community awaits your insights.
  • For technical questions and feature requests, dive into our GitHub discussions.