An easy-to-use cross-platform Lightning wallet
An easy-to-use cross platform lightning wallet
N.B. This is still early technology and there’s a risk of losing all of your funds. We recommend not putting in more money than you are willing to lose.
The app comes for two threat models:
Pocket Money: prebuilt and signed releases with auto update (recommended for most users).
Tin Foil Hat: if you'd rather build it yourself and do without auto updates, see the instructions below.
See the
ToDo (next release)column on our project board. Issues that are easy to pick up for outside contributors are labeled
help wanted.
To build the mobile app locally, see the README in the
/mobiledirectory for instructions.
To build the desktop app locally follow the instructions below:
We will use
lndto make GRPC calls from the ReactJS environment
git clone https://github.com/lightningnetwork/lnd $GOPATH/src/github.com/lightningnetwork/lnd cd $GOPATH/src/github.com/lightningnetwork/lnd make && make install tags="experimental autopilotrpc signrpc walletrpc chainrpc invoicesrpc routerrpc"If you have any issues with this step, make sure to review the Preliniaries to installing LND
We will use
btcdas the backend operating mode
git clone https://github.com/btcsuite/btcd $GOPATH/src/github.com/btcsuite/btcd cd $GOPATH/src/github.com/btcsuite/btcd GO111MODULE=on go install -v . ./cmd/...
Cloning this git repo
git clone https://github.com/lightninglabs/lightning-appand from the project root folder run the following commands: ``` npm install
npm test ```
To start the app in development mode (simnet):
npm run electron-dev
Running in development mode can allow you to run in full node mode instead of the default neutrino mode, and will also allow you to run in simnet node for testing. The app will use it's own lnd
data/lnddir and does not share state with other lnd installations on your system. See setup local cluster on how to set up your simnet cluster for development.
To build the UI style guide
npm run storybook
To build the packaged version of the app e.g. for macOS run:
cp $GOPATH/bin/lnd ./assets/bin/darwin npm run electron-pack
The packaged app will then be available in the
distdirectory. The packaged version of the app will run on Bitcoin mainnet.
To run the packaged version of the app e.g. for macOS run:
./dist/mac/Lightning.app/Contents/MacOS/Lightning
The app is configured for mainnet by default but you can opt-in to testnet:
./dist/mac/Lightning.app/Contents/MacOS/Lightning --bitcoin.testnet --bitcoin.node=neutrino --neutrino.addpeer=btcd-testnet.lightning.computer --neutrino.feeurl=https://nodes.lightning.computer/fees/v1/btc-fee-estimates.json
Start btcd in a separate terminal session and wait until it's fully synced (can take a while):
btcd --txindex --rpcuser=kek --rpcpass=kek
To run the packaged version of the app e.g. for macOS run:
./dist/mac/Lightning.app/Contents/MacOS/Lightning --bitcoin.mainnet --btcd.rpcuser=kek --btcd.rpcpass=kek
Start bitcoind in a separate terminal session and wait until it's fully synced (can take over a day):
bitcoind -txindex=1 -rpcuser=kek -rpcpassword=kek -rpcbind=localhost -zmqpubrawblock=tcp://127.0.0.1:28332 -zmqpubrawtx=tcp://127.0.0.1:28333
To run the packaged version of the app e.g. for macOS run:
./dist/mac/Lightning.app/Contents/MacOS/Lightning --bitcoin.mainnet --bitcoin.node=bitcoind --bitcoind.rpcuser=kek --bitcoind.rpcpass=kek --bitcoind.zmqpubrawblock=tcp://127.0.0.1:28332 --bitcoind.zmqpubrawtx=tcp://127.0.0.1:28333
Lnd data and logs are written to the following locations in production:
~/.config/lightning-app/lnd
~/Library/Application Support/lightning-app/lnd
%USERPROFILE%\AppData\Roaming\lightning-app\lnd