Examples
Quick Guide how to run examples
In this directory you can find examples of how to use the spv-wallet-js-client
package.
Before you run
Pre-requisites
You have access to the
spv-wallet
non-custodial wallet (running locally or remotely).You have installed this package on your machine (
yarn install
on this project's root directory).
Concerning the keys
The
adminKey
defined inexample-keys.ts
is the default one from spv-wallet-web-backend repositoryIf in your current
spv-wallet
instance you have a differentadminKey
, you should replace the one inexample-keys
with the one you have.
The
exampleXPub
andexampleXPriv
are just placeholders, which won't work.You should replace them by newly generated ones using
yarn generate-keys
,... or use your actual keys if you have them (don't use the keys which are already added to another wallet).
Additionally, to make it work properly, you should adjust the
examplePaymail
to align with yourdomains
configuration in thespv-wallet
instance.
Proposed order of executing examples
generate-keys
- generates new keys (you can copy them toexample-keys
if you want to use them in next examples)admin-add-user
- adds a new user (more precisely addsexampleXPub
and thenexamplePaymail
to the wallet)
To fully experience the next steps, it would be beneficial to transfer some funds to your
examplePaymail
. This ensures the examples run smoothly by demonstrating the creation of a transaction with an actual balance. You can transfer funds to yourexamplePaymail
using a Bitcoin SV wallet application such as HandCash or any other that supports Paymail.
get-balance
- checks the balance - if you've transferred funds to yourexamplePaymail
, you should see them herecreate-transaction
- creates a transaction (you can adjust theoutputs
to your needs)list-transactions
- lists all transactions and with example filteringsend-op-return
- sends an OP_RETURN transactionadmin-remove-user
- removes the user
In addition to the above, there are additional examples showing how to use the client from a developer perspective:
handle-exceptions
- presents how to "catch" exceptions which the client can throwcustom-logger
- shows different ways you can configure (or disable) internal logger
Util examples
xpriv-from-mnemonic
- allows you to generate/extract an xPriv key from a mnemonic phrase. To you use it you just need to replace themnemonic
variable with your own mnemonic phrase.xpub-from-xpriv
- allows you to generate an xPub key from an xPriv key. To you use it you just need to replace thexPriv
variable with your own xPriv key.generate-totp
- allows you to generate and check validity of a TOTP code for client xPriv and a contact's PKI
How to run an example
The examples are written in TypeScript and can be run by:
See the
package.json
for the list of available examples and scripts
Last updated