layer2tech / mercury-node

Lightning node (service) for mercury wallet
12 stars 2 forks source link

# mercury-node

The mercury node that powers the front end wallet ui for handling lightning transactions/payments. The front end can be found here.

Requirements

mercury-node needs a bitcoin core client running and a electrum client. We use Polar (Lightning Node) instead. Ensure that the setup file matches the connection values in Polar.

Plugin Link Setup file
Polar Polar Lightning src/LDK/bitcoin_clients/ElectrumClient.mts

Important files

File Explanation
src/LDK/init/initialiseLDK.ts Builds the node and returns a LightningClient
src/server.ts Starts the express server with LightningClient
src/LDK/LightningClient.ts The class that has access to the running node
src/routes/ The express server routes that can be called which run LightningClient methods
src/debug_lightning.ts A debug file to run commands directly rather than through web api

Development

mercury-node requires Node.js to run.

Install the dependencies and devDependencies and start the server.

cd mercury-node
npm i
npm start