Use the public Radiant testnet¶
The 5-minute quickstart runs on regtest — a
private chain on your own machine. That is the recommended way to build and
iterate: it’s deterministic, free, needs no peers, and you mine and fund blocks
yourself with pyrxd regtest mine / pyrxd regtest fund. Reach for the public
testnet only when you specifically need a shared network — testing against
other people’s transactions, a wallet, or an indexer over real P2P/finality.
Reliability note (verified 2026-06-11). Radiant’s public testnet faucet is community-run and was returning a gateway error when this guide was written. Regtest has no external dependency and is the path that always works; treat testnet as best-effort. If the faucet below is down, ask in the official Radiant channels (linked from https://radiantblockchain.org) for the current testnet faucet — do not assume a specific URL is canonical.
1. Get a testnet-capable node binary¶
Testnet runs the same radiantd as mainnet, selected with -testnet. Download
the latest official release binary from
Radiant-Core releases
(the radiant-<version>-linux-x64.tar.gz daemon bundle), or use the Radiant Core
GUI. Run it on testnet:
$ radiantd -testnet -server -txindex=1 \
-rpcuser=you -rpcpassword=change-me -rpcbind=127.0.0.1 -rpcallowip=127.0.0.1
The SCRIPT_SECURITY_UPGRADE consensus rules added in v3.1.x — the per-script
opcode-cost budget, the K12 bound, and consensus enforcement of the per-script
peak stack-memory budget — are already active on testnet from block 1, so
testnet is the closest public mirror of post-upgrade mainnet behaviour, and a
good reason to validate covenant-heavy work here before mainnet.
Do not read that as “none of it applies to mainnet yet”. Half of it already
does: AcceptToMemoryPoolWorker ORs SCRIPT_VERIFY_MEMORY_BUDGET into its
policy verify flags unconditionally (src/validation.cpp:802-804 @
v3.1.2) — independently of fRequireStandard and of the activation height —
so every mainnet node’s mempool enforces the peak stack-memory budget today
(ScriptError::STACK_MEMORY, src/script/interpreter.cpp:2659-2665). A script
that exceeds it is refused relay on mainnet now, while remaining
consensus-valid until the upgrade height. The opcode-cost budget is the half
that really is testnet-only for now: it is gated on SCRIPT_SECURITY_UPGRADE
alone (src/validation.cpp:1782-1784).
Both budgets’ numeric values live in consensus.h, which is not among the
sources vendored at tests/vendor/radiant_core/, so this guide deliberately
quotes no figure for either — read them from the node you are running.
2. Point pyrxd at testnet¶
pyrxd’s CLI config takes a network of mainnet | testnet | regtest
(~/.pyrxd/config.toml, see pyrxd.cli.config). Set network = "testnet" and
put your testnet node’s RPC/ElectrumX endpoints under [networks.testnet].
This is required, not optional. pyrxd ships no default testnet ElectrumX
server (none was confirmed to exist), and it will not fall back to the mainnet
one — a --network testnet run with no testnet endpoint configured refuses with
a message naming the exact TOML to add. That refusal replaced the older
behaviour, where the same command silently used the mainnet server while
reporting itself as testnet. Every endpoint is additionally checked against the
network’s genesis hash on first use, so a wrong entry fails immediately instead
of at broadcast time.
network = "testnet"
[networks.testnet]
electrumx = "wss://your-testnet-electrumx:50022/"
Testnet addresses use the testnet version bytes, so a key reconstructed with
PrivateKey(wif) from a testnet wallet derives a testnet address — the same flow
as the quickstart, just on the shared chain.
3. Fund a testnet address¶
Testnet coins have no value and come from a faucet (you can’t mine them on demand
the way pyrxd regtest fund does on your private chain). The community faucet has
been hosted at faucet-testnet.radiant4people.com (the mainnet sibling,
faucet.radiant4people.com, was live at the time of writing). Paste a testnet
address; if the faucet is unavailable, the official Radiant Discord is the place
to ask for testnet RXD or the current faucet endpoint.
Once funded, every other recipe — minting a Glyph, building a covenant, running a swap leg — works the same as on regtest; only the network and the source of coins change.
When to use which¶
regtest (quickstart) |
public testnet |
|
|---|---|---|
Coins |
|
community faucet (best-effort) |
Blocks |
you mine ( |
shared, ~real timing |
Peers / P2P |
none (isolated) |
real network |
Determinism |
total |
none |
Best for |
building & iterating, CI, the quickstart |
shared-network / wallet / indexer testing |
For almost all development, stay on regtest. Graduate to testnet only for the shared-network behaviour regtest can’t give you.