/ren-js

RenJS - the official JavaScript library for interacting with RenVM

Primary LanguageTypeScriptMIT LicenseMIT

🛠️ ren-js

Version

The official Javascript SDK for interacting with RenVM.

yarn add @renproject/ren @renproject/chains

Docs

See Ren Client Docs

RenJS v3

RenJS v3 is currently available as an alpha release:

yarn add @renproject/ren @renproject/chains

RenJS v3 Docs (WIP)

Changelog

See the Releases page.

Package list


Developer docs - click to expand

Developing locally

# Clone repository
git clone git@github.com:renproject/ren-js.git && cd ren-js

# Install dependencies
yarn

# Build every package
yarn run build

Linking

If you want to use your local version of RenJS in another repository, run

# In the ren-js repository
yarn run link:all

You can now link it to any other local repository by running:

# In other local repositories
yarn link @renproject/ren @renproject/chains @renproject/utils @renproject/provider

Running tests

You'll need to:

  1. Generate a mnemonic and send ETH (goerli for testnet) (path: m/44'/60'/0'/0/).
    • let w = require("ethers").Wallet.createRandom(); console.debug(w.address, w.mnemonic.phrase);
  2. Generate a private key and send testnet crypto funds.
    • require("send-crypto").newPrivateKey();
  3. Optionally generate an Infura API key.

Create a .env file which contains the following exported variables:

export MNEMONIC="your mnemonic here"
export TESTNET_PRIVATE_KEY="your bitcoin private key"

# Optional
export INFURA_KEY="your infura key"

To run the tests:

yarn run test