Developers & node operators

Everything you need to run a full node, build Vivuscoin Core from source and talk to the chain over RPC: the repository, the chain parameters, the seed nodes and the settings for a public node.

Source code

Vivuscoin Core is a fork of Bitcoin Core from the 0.17 era, MIT-licensed, with its own chain parameters and one extra subsidy rule. Anyone can read it, build it and run it.

Run a full node

A node needs nothing special: the chain is small, a few tens of thousands of mostly empty blocks. Put this in vivuscoin.conf in the data directory before the first start.

vivuscoin.conf
# Peers: the two seed nodes (port 8168 is the default)
addnode=seed1.vivuscoin.com
addnode=seed2.vivuscoin.com
listen=1

# Keep serving blocks to peers even when the last block is old
# (seconds; this value is about 30 years)
maxtipage=999999999

# On a public server: no wallet, RPC on localhost only
disablewallet=1
server=1
rpcbind=127.0.0.1
rpcallowip=127.0.0.1

Start vivuscoind (or the GUI) and wait for getblockchaininfo to report the same height and best block hash as the block explorer; that is a synced node.

ItemValue
Data directoryLinux ~/.vivuscoin/ · macOS ~/Library/Application Support/Vivuscoin/ · Windows %APPDATA%\Vivuscoin\ (Bitcoin Core convention with the coin name; check debug.log for the path your build uses)
P2P port8168 TCP. Open it inbound if you want to serve other nodes; outbound is enough to sync.
RPC port8332 TCP, local only. Never expose it; there is no authentication beyond the password in vivuscoin.conf.
Disk and memorySmall. The whole chain fits comfortably beside the default 450 MB database cache.
Wallet on serversKeep it disabled (disablewallet=1). Mine to an address whose keys live elsewhere; the stratum endpoint pays any address you give it.
VersionRun Vivuscoin Core 1.1 (user agent /Parvus:1.1.0/); older versions cannot follow the current chain.

Chain parameters

From src/chainparams.cpp, src/consensus/consensus.h, src/amount.h and src/validation.cpp in Vivuscoin Core 1.1.

ParameterValue
Genesis hash000000009ba1cc4ecf00c8d24b704f3e88f8c03a70fba8f3e6c350007b5a2cd5
Checkpoint (height 24,092)000000000040a3597214ba978bdf6e853eb9d84c8abe39bcd90d57bc8c3a01fb
Network magicf0 b0 b0 d0
Default P2P port8168 (testnet 18168)
Default RPC port8332 (testnet 18332)
Protocol version70015; node user agent /Parvus:1.1.0/
Proof of workSHA-256d
Block target240 s (nPowTargetSpacing = 4 * 60)
Difficulty ruleLWMA-1, N = 60, T = 240 s, per block; emergency easing after a gap ≥ 6T, max 24 steps
Future-time limit720 s; peer time adjustment capped at 360 s
Reorg limitReorganisations deeper than about 10 blocks refused; checkpoints kept
Block subsidy50 VVC, halving every 210,000 blocks (nSubsidyHalvingInterval)
Early subsidiesThe consensus code paid larger subsidies in the first 120 blocks; see GetBlockSubsidy() and Supply.
Coinbase maturity100 blocks (COINBASE_MATURITY)
Address, P2PKH (legacy)version byte 17 → 7… or 8…
Address, P2SH (wallet default, p2sh-segwit)version byte 23 → A…
Address, bech32HRP vvc → vvc1…
Private key (WIF) version byte132
MAX_MONEY21,000,000 VVC. This is the largest amount a single transaction may carry, not the supply cap; moving more than 21 million VVC takes more than one transaction.
Supply at the tip127,033,220 VVC at height 24,097 (2026-09-23); live value at /explorer/api/v1/totalcoins

Build from source

The tree builds like Bitcoin Core 0.17: autotools, with the depends system supplying Boost, libevent, BerkeleyDB 4.8 and Qt so the result does not depend on whatever your distribution ships. The repository’s doc/build-unix.md, doc/build-osx.md and doc/build-windows.md are the authoritative instructions; the outline below is the Linux path.

Linux, depends build
git clone https://github.com/vivuscoin/vivuscoin.git
cd vivuscoin
make -C depends -j"$(nproc)"                 # builds the libraries once; slow the first time
./autogen.sh
CONFIG_SITE="$PWD/depends/x86_64-pc-linux-gnu/share/config.site" ./configure
make -j"$(nproc)"
sha256sum src/vivuscoind src/vivuscoin-cli src/qt/vivuscoin-qt
  • Windows is cross-compiled from Linux: make -C depends HOST=x86_64-w64-mingw32, then configure with that host’s config.site. The installer is produced by make deploy.
  • macOS builds natively with the Homebrew packages listed in doc/build-osx.md. The release image is unsigned; Gatekeeper is bypassed by right-clicking the app and choosing Open.
  • Reproducibility. Release builds are made as reproducible as practical from one tagged commit, and the SHA-256 of every artifact is published with the release. If you build the same tag and get a different hash, say so on GitHub.
  • Which tag. Build the latest release tag to run what the network runs. Never run a development branch against a data directory you care about without a backup.

RPC quick reference

The RPC surface is Bitcoin Core’s of the same era. These are the calls the status page uses and the ones you are most likely to need; vivuscoin-cli help lists the rest.

CallWhat it tells you
getblockchaininfoHeight, headers, best block hash, difficulty, initialblockdownload. Synced means blocks and bestblockhash match the block explorer.
getbestblockhash · getblockhash <height>The hash at the tip or at any height; feed it to the next call.
getblockheader <hash> · getblock <hash> 2Header fields including time and bits; verbosity 2 includes every transaction, which is how you inspect a coinbase.
getpeerinfo · getconnectioncountWho you are connected to and their reported height; the status page derives seed2’s height from this.
getchaintipsEvery known chain tip. More than one active tip means a competing branch.
gettxoutsetinfoThe full UTXO set summary, including total_amount: 127032970 VVC at the checkpoint height.
getblocktemplateA template for the next block. This is what the stratum endpoint polls.
validateaddress <addr>Checks an A…, 7…/8… or vvc1… address; the same check the airdrop form and the pool apply.
Examples
vivuscoin-cli getblockchaininfo
vivuscoin-cli getblockheader "$(vivuscoin-cli getbestblockhash)"

# raw JSON-RPC, same thing over HTTP (credentials from vivuscoin.conf)
curl -s --user rpcuser:rpcpassword --data-binary \
  '{"jsonrpc":"1.0","id":"vvc","method":"getblockchaininfo","params":[]}' \
  -H 'content-type: text/plain;' http://127.0.0.1:8332/

Status data for integrators

If you only need the headline numbers, you do not need a node. /status/status.json is regenerated every five minutes from the RPC calls above; the live tiles on this site read it. It is served same-origin with Cache-Control: max-age=300; there is no CORS header, so fetch it server-side or proxy it.

FieldTypeSource
height, headersintegergetblockchaininfo
last_block_timeISO 8601 UTCgetblockheader(bestblockhash).time
difficultyfloatgetblockchaininfo.difficulty
best_hashhexgetbestblockhash
chain_tipsintegernumber of entries in getchaintips
peersintegergetconnectioncount
seed2_heightinteger or nullseed2’s height as seen by seed1 in getpeerinfo
versionstringgetnetworkinfo.subversion
updatedISO 8601 UTCtime the file was written; treat anything older than 15 minutes as stale
status.json (example, abridged)
{"height":24097,"headers":24097,"last_block_time":"2026-09-24T03:52:11Z","difficulty":132.64,
 "best_hash":"00000000018b0755f23fcd8ebed9b397d7140d59b46971d5dcf706c09406e877",
 "chain_tips":1,"peers":1,"version":"/Parvus:1.1.0/",
 "updated":"2026-09-24T04:32:02Z"}

Stratum endpoint

Miners and mining software connect to the solo stratum endpoint. It runs in solo mode: the coinbase of any block you find pays the address you authorise with, the pool holds nothing, and there is nothing to withdraw. Details and hardware notes on the Mining page.

Solo stratum
URL:       stratum+tcp://pool.vivuscoin.com:3333
Username:  your VVC address (use an A... address; vvc1... is not yet tested)
Password:  x

Block explorer

The block explorer at vivuscoin.com/explorer/ is live and read-only: blocks, transactions, addresses, search and a rich list.

  • /explorer/block/<hash or height>, /explorer/tx/<txid>, /explorer/address/<address>
  • /explorer/rich-list, /explorer/search?q=<height, hash, txid or address>

A JSON API sits under /explorer/api/v1/: no key, CORS open, cached for 30 seconds. The three endpoints coin directories usually ask for:

Explorer API
https://vivuscoin.com/explorer/api/v1/totalcoins      # bare number, e.g. 127033220.00000000
https://vivuscoin.com/explorer/api/v1/getblockcount   # bare number: the current height
https://vivuscoin.com/explorer/api/v1/status          # JSON: height, hash, time, difficulty, supply, hashrate, synced, …

Further endpoints (getdifficulty, circulating, getbalance/<address>, address/<address>, block/<height>, tx/<txid>, blocks, richlist) follow the same pattern and return what the matching page shows.