@mutinywallet/node-manager v0.2.4
mutiny-node
The mutiny node that powers the mutiny web frontend.
The original frontend proof of concept has moved to here. While the latest version is being worked on here.
Importing
Both of those current web frontends import the NPM package that this project creates here.
Development
Building on the mac
See the discussion here: https://github.com/rust-bitcoin/rust-secp256k1/issues/283
I installed llvm, and then use just pack-mac
instead of just pack
(so that wasm-pack will use the homebrew installed version of llvm stuff, instead of the system default)
Dependencies
cargo install wasm-pack
brew install chromedriver
Build
Get all the dependencies above first.
Build the rust wasm stuff:
just pack
or on mac:
just pack-mac
Websocket proxy
You can use the default websocket proxy @ p.mutinywallet.com no matter what network you are on. To run it locally, follow the docker instructions here.
Bitcoin networks
You'll need a regtest bitcoin node, electrs, and an exposed port to whatever regtest node you are connecting to.
For electrs
First build it, then run this script for regtest, replacing paths and passwords where necessary. YMMV. One special note is that this is for cookie password based auth.
/path/to/target/release/electrs -vvvv --daemon-dir /path/to/.bitcoin/regtest/data/ --timestamp --blocks-dir /path/to/.bitcoin/regtest/data/regtest/blocks/ --cookie="bitcoinrpc:{cookiebasedpassword}" --db-dir /path/to/.electrs/ --network regtest --http-addr 0.0.0.0:3003
Expose lightning node regtest
I use bore for this. Swap out 9735 with whatever your OTHER node's port is running on. Typically 9735.
bore local 9735 --to bore.pub
Whenever you are wanting to connect to this node from the webbrowser, put our default websocket proxy url into it along with the following for the pubkey connect string.
You'll want the pubkey you're connecting to, the IP address of bore (this could change but hasn't changed for me yet), and the port that bore returns that always changes, so look at the bore logs.
{other_node_pubkey}@159.223.171.199:{port_returned_from_bore}
Publishing
Right now publishing is manual.
First change the version of node-manager in ./node-manager/Cargo.toml
.
just login #or login-mac
just release # or release-mac
just publish # or publish-mac