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.

hub logo

Self-host hub

v1.24.4

Bitcoin Lightning wallet connecting apps via NWC

ReleaseOpen SourceApache-2.0
Updated9 hours ago
LanguageTypescript
Setup difficultyModerate
Stars
287
RAM
2GB (embedded LDK node) / 256MB (external node)
Storage
1GB disk space (embedded LDK node)
Docker
ghcr.io/getalby/hub
Install with Docker
hub screenshot 1hub screenshot 2hub screenshot 3hub screenshot 4hub screenshot 5hub screenshot 6hub screenshot 7hub screenshot 8hub screenshot 9

What is hub?

This self-custodial Bitcoin Lightning wallet implements Nostr Wallet Connect so users can link their wallet to many compatible applications. It runs as a single-user service with an embedded LDK-based Lightning node by default, but also connects to external Lightning nodes such as LND, CLN, Phoenixd, Cashu, and Bark. The software includes an integrated app store, sub-wallets for family or friends, permission management with spending limits by time period, and automatic swaps between on-chain and Lightning. It supports multiple deployment methods including Docker, binary downloads, desktop apps for Windows, macOS, and Linux, and cloud providers. The project is open-source under the Apache-2.0 license.

Should you self-host hub?

hub scores 54/100 on selfhost.directory (how scoring works) and ranks #19 of 42 in Cryptocurrency. It has 287 GitHub stars.

It shipped 12 stable releases in the past year. The latest, v1.24.4, came out on 22 October 2026. New versions land roughly every 3 weeks.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is Apache-2.0-licensed and written mostly in Typescript.

Its closest alternative on selfhost.directory is Bitcoin Core (86/100, 90 526 stars). It scores higher overall, so compare the two before you pick. See hub vs Bitcoin Core side by side.

Features

  • Auto-swaps
  • Database migrationExperimental - backup recommended
  • Desktop application
  • Encrypted Storage
  • Integrated app store
  • Multiple Lightning backends
  • Permission management with budgets
  • Sub-wallets

hub README

How to install hub

Install hub with Docker

Docker
Environment variables
WORK_DIR, PORT, RELAY, DATABASE_URI, etc.

docker run -v ~/.local/share/albyhub:/data -e WORK_DIR='/data' -p 127.0.0.1:8080:8080 --pull always ghcr.io/getalby/hub:latest

Tested on Linux only

How to configure hub

  • ALBY_OAUTH_CLIENT_IDAlby OAuth client ID

    Alby OAuth client ID

  • ALBY_OAUTH_CLIENT_SECRETAlby OAuth client secret

    Alby OAuth client secret

  • AUTO_UNLOCK_PASSWORDPassword to auto-unlock on startup

    Password to auto-unlock on startup

  • BARK_ESPLORA_SERVEREsplora server URL for chain data

    Esplora server URL for chain data

    values: e.g. https://esplora.signet.2nd.dev

  • BARK_LOG_LEVEL3Bark log level

    Bark log level

  • BARK_SERVERArk server URL

    Ark server URL

    values: e.g. https://ark.signet.2nd.dev

  • BARK_SERVER_ACCESS_TOKENOptional access token for private Ark server

    Optional access token for private Ark server

  • BASE_URLBase URL for OAuth redirects

    Base URL for OAuth redirects

  • BOLTZ_APIBoltz-compatible API for swaps functionality

    Boltz-compatible API for swaps functionality

  • CLN_ADDRESSCLN gRPC address (host:port)

    CLN gRPC address (host:port)

  • CLN_ADDRESS_HOLDCLN hold plugin gRPC address

    CLN hold plugin gRPC address

  • CLN_LIGHTNING_DIR~/.lightning/<network>CLN lightning directory with gRPC certificates

    CLN lightning directory with gRPC certificates

  • DATABASE_URInwc.db in $XDG_DATA_HOME/albyhubSQLite filename or PostgreSQL URL

    SQLite filename or PostgreSQL URL

  • ENABLE_ADVANCED_SETUPForce specific backend type

    Force specific backend type

    values: true, false

  • FRONTEND_URLFrontend URL for OAuth redirects

    Frontend URL for OAuth redirects

  • GO_PROFILER_ADDRGo pprof profiler address

    Go pprof profiler address

    values: e.g. localhost:6060

  • LDK_ANNOUNCEMENT_ADDRESSESAnnouncement addresses (required if using VPN)

    Announcement addresses (required if using VPN)

  • LDK_CHANNEL_MONITOR_WARNING_SIZE_BYTESChannel monitor size warning threshold

    Channel monitor size warning threshold

  • LDK_ELECTRUM_SERVERoptimized Alby electrum serverCustom electrum server for LDK backend

    Custom electrum server for LDK backend

    values: ssl://host:50002 or tcp://host:50001

  • LDK_ESPLORA_SERVEREsplora server as chain source instead of electrum

    Esplora server as chain source instead of electrum

  • LDK_LISTENING_ADDRESSESListening addresses for public channels

    Listening addresses for public channels

  • LDK_LOG_LEVEL3LDK node log level

    LDK node log level

  • LDK_LSPS2_ADDRESSESLSPS2 JIT LSP provider for receiving

    LSPS2 JIT LSP provider for receiving

    values: <pubkey>@<host>:<port>

  • LDK_MAX_CHANNEL_SATURATIONMax portion of channel capacity for sending payments

    Max portion of channel capacity for sending payments

  • LDK_MAX_PATH_COUNTMaximum number of paths for MPP payments

    Maximum number of paths for MPP payments

  • LDK_VSS_URLVSS encrypted remote storage URL

    VSS encrypted remote storage URL

  • LN_BACKEND_TYPELDK (embedded)Lightning backend type

    Lightning backend type

    values: LDK, LND, CLN, PHOENIXD, CASHU, BARK

  • LND_ADDRESSLND gRPC address

    LND gRPC address

    values: e.g. localhost:10009

  • LND_CERT_FILEPath to LND tls.cert file

    Path to LND tls.cert file

  • LND_MACAROON_FILEPath to LND admin.macaroon file

    Path to LND admin.macaroon file

  • LOG_LEVEL4 (info)Main application log level (higher = more verbose)

    Main application log level (higher = more verbose)

  • MEMPOOL_APIMempool API URL

    Mempool API URL

  • NETWORKbitcoinOn-chain network (bitcoin, signet, testnet, regtest)

    On-chain network (bitcoin, signet, testnet, regtest)

    values: bitcoin, signet, testnet, regtest

  • PORT8080HTTP server listen port

    HTTP server listen port

  • REBALANCE_SERVICE_URLService URL for rebalancing channels

    Service URL for rebalancing channels

  • RELAYwss://relay.getalby.com,wss://relay2.getalby.comNostr relay URLs (comma-separated)

    Nostr relay URLs (comma-separated)

  • WORK_DIR$XDG_DATA_HOME/albyhubDirectory to store NWC data files

    Directory to store NWC data files

hub releases & version history

More in Finance

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…