Skip to content

About

A hot custodial Ravencoin wallet

Resources

Stars

0 stars

Watchers

2 watching

Forks

Repository files navigation

multiwallet

A hot custodial Ravencoin wallet.

Never use mainnet against a public or hosted RPC. This wallet sends private keys to raven_url when it signs (signrawtransaction). Mainnet (network: "rvn") is allowed only against a Ravencoin node you fully operate. Public endpoints such as ting.finance are for testnet only.

Getting started

Requires Node.js 22 or later.

Clone the git repo git clone https://github.com/ravenrebels/multiwallet.git

Install dependencies

cd ./multiwallet
npm install

Build

(builds client gui)

npm run build

Configuration

Copy the example and start the server. If config.json is missing, the app creates the same testnet defaults on first run.

cp config.example.json config.json

The example uses the public Ravencoin testnet RPC at ting.finance:

  • network: rvn-test
  • raven_url: https://rvn-rpc-testnet.ting.finance/rpc
  • raven_username / raven_password: anon / anon (the client always sends Basic auth; this public endpoint does not need real credentials)

mode can be RAVENCOIN_AND_ASSETS, ASSETS, or SOME_ASSETS. With SOME_ASSETS, set assets to the token names the GUI should show.

Mainnet

Do not point mainnet at ting.finance or any other public RPC. The process refuses known public hosts when network is rvn.

For mainnet set:

  • network: rvn
  • raven_url: your own node, for example http://127.0.0.1:8766
  • raven_username / raven_password: the rpcuser / rpcpassword on that node

Local Ravencoin full node / Raven core node

Required for mainnet. Optional on testnet if you prefer your own indexed Raven Core instead of ting.finance. On testnet, raven_url is typically http://127.0.0.1:18766. Set raven_username / raven_password to match rpcuser / rpcpassword.

The node needs extra indexes. Example raven.conf:


server=1
testnet=1

onlynet=ipv4
regtest=0
 listen=1
#Maintains the full transaction index on your node. Needed if you call getrawtransaction. Default is 0.
txindex=1

#Maintains the full Address index on your node. Needed if you call getaddress* calls. Default is 0.
addressindex=1

#Maintains the full Asset index on your node. Needed if you call getassetdata. Default is 0.
assetindex=1

#Maintains the full Timestamp index on your node. Default is 0.
timestampindex=1

#Maintains the full Spent index on your node. Default is 0.
spentindex=1

#Username and password - You can make this whatever you want.
rpcuser=secret
rpcpassword=secret

#What IP address is allowed to make calls to the RPC server. If youre running the wallet on the same machine youre
#developing on, this is fine. If not, you need to put the IP address of the machine CALLING the node here.
rpcallowip=127.0.0.1

dbcache=4096

upnp=1

Start the server


npm run serve

Server is now running on http://localhost:80

You can change port by setting env variable PORT. So running PORT=8080 npm run serve will start the server on port 8080

About

A hot custodial Ravencoin wallet

Resources

Stars

0 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages