Skip to content
This repository was archived by the owner on Feb 3, 2025. It is now read-only.

MutinyWallet/mutiny-node

Repository files navigation

mutiny-node

MIT licensedmutiny-core on crates.iomutiny-core on docs.rsnpm version

The mutiny node that powers the mutiny web frontend.

The frontend for Mutiny Wallet is here.

Importing

The web front end imports the NPM package that this project creates here.

Development

Nixos

A flake.nix file has been added for easier nix development and testing. Pretty much all cargo / wasm commands work, though right now optimized for aarch64-unknown-linux-gnu and wasm32-unknown-unknown compilation in the nix shell.

To start:

nix develop 

Then the following just examples that work:

just clippy-nix just test-nix just pack just release 

Building on the mac

See the discussion here: rust-bitcoin/rust-secp256k1#283

You may have to either prefix some environment variables or set them in your env or shell file:

AR=/opt/homebrew/opt/llvm/bin/llvm-ar CC=/opt/homebrew/opt/llvm/bin/clang 

Dependencies

  • rust (specifically, nightly: rustup toolchain install nightly-2023-10-24 and rustup target add wasm32-unknown-unknown --toolchain nightly)

  • node

  • wasm-pack

cargo install wasm-pack 
brew install chromedriver 

Build

Get all the dependencies above first.

Build the rust wasm stuff:

just pack 

Testing

To run the local tests you can simply use

just test 

To test running mutiny with mutiny-web you'll need to run the following:

just pack just link 

Then in the mutiny-web repo:

just local 

Then you can run the mutiny-web project and it will use the locally built mutiny-node instead of the published npm package.

You only need to run just link once, but you'll need to run just pack every time you make changes to the rust code. just link creates a symlink in the mutiny-web project to the mutiny-node project. This allows you to make changes to the mutiny-node project and see them reflected in the mutiny-web project without having to publish the npm package. just pack builds the wasm binary and needs to be run every time you make changes to the rust code.

Publishing

The mutiny-core rust library and mutiny-wasm typescript packages are published when new github releases are created. Just bump both of those cargo.toml package numbers and create release just publish.

Packages

No packages published

Contributors 10

Languages