Note: If you have installation or compilation issues, please file a Github issue or ping us in Slack.
To compile the Zap wallet, you will need:
After installing the above prerequisites, clone the repo via git:
git clone https://github.com/LN-Zap/zap-desktop.git
Install all the dependencies with yarn:
cd zap-desktop
yarn
Zap requires lnd
but does not store lnd
binaries in the Github repo.
To setup lnd
for Zap, you have two options:
lnd
allows you to configure your node to use the new light client neutrino
(BIP 157 & BIP 158) which allows you to run lnd
without requiring a full node.
This is the default configuration for the Zap wallet. To use the light client you can either use the Lightning Labs Binary or Compile lnd.
Note: The Lightning Labs lightning-app
project is different then lnd
Download the lnd binary for your appropriate OS and copy it to the appropriate location for your OS.
You can compile lnd
from source to have the latest development version. This allows you to use lncli
in addition to Zap, and run a separate lnd
instance with custom configuration. Zap will detect the separate lnd
instance and use it as the backend client.
For Zap to run properly without any custom lnd
setup, copy the lnd
binary to the appropriate location for your OS.
The lnd
binary can be found at $GOPATH/bin
.
Follow the instructions on the lnd installation page.
Zap expects lnd
to be in one of these directories depending on your OS:
- macOS
resources/bin/darwin/
- Linux
resources/bin/linux/
- Windows
resources/bin/win32/
On macOS and Linux, make sure the file has execute permissions:
chmod +x lnd
To test that everything has been installed correctly:
npm run test
To run Zap:
npm run dev
To check linting:
npm run lint