Documentation
The full documentation lives in the repository. This page summarises what to read and how to run a node.
Run a regtest node on your machine
git clone <repo> zkpow && cd zkpow
cargo build --release
./target/release/zkpowd --network regtest --datadir ./data --nolisten \
--rpcbind 127.0.0.1:19441 --rpcuser demo --rpcpassword demo
# in another shell: create a wallet, get a transparent address, then restart zkpowd with --mine <address>
./target/release/zkpow-explorer --network regtest --rpc 127.0.0.1:19441 --rpcuser demo --rpcpassword demo --bind 127.0.0.1:8080Connect this hosted explorer to a node
Set ZKPOW_RPC_URL, ZKPOW_RPC_USER and ZKPOW_RPC_PASSWORD on the Vercel project. Only read-only methods are proxied; the node's credentials never reach the browser. Put the node's RPC behind TLS (a reverse proxy) before exposing it.
Read in the repository
| File | Contents |
|---|---|
PRD.md | Product requirements: scope, tokenomics, acceptance tests |
docs/STATUS.md | Latest verification run: gate, binaries by hand, acceptance status, open requirements |
docs/spec/private-protocol.md | Keys, addresses, coins, membership and authorisation proofs, batch verification, threshold spends |
docs/spec/consensus.md | Parameters, PoW, block and transaction format, validation rules, finality |
docs/spec/rpc.md | Every JSON-RPC method and field |
docs/exchange-integration.md | Deposit and withdrawal rules per address type, credit policy, wallet cookbook |
docs/spec/bridge.md, docs/bridge.md | The Robinhood Chain bridge: lock / mint / burn / release protocol, switches, ledger, HTTP API; operator guide |
docs/adr/ | Decisions: language, address bytes, anonymity set, names, reward split, PoW, ticker, audit gate, browser-first wallet, bridge |
Bridge to Robinhood Chain
ZKPOW can be represented on Robinhood Chain as wZKPOW, an ERC-20 backed 1:1 by coins locked in a custody wallet on this chain (ADR-0010). You ask the bridge for a deposit address bound to your Robinhood Chain address; coins paid to it are minted to you once final, minus the fee. Burning wZKPOW with a zkPoW address pays you back from custody. Mints need signatures from the approved bridge signers and each lock mints once; the contract is deployed paused and the service is held by the compile-time constant BRIDGE_ENABLED until the bridge audit is complete. The wrapped side is fully public: privacy exists only on the native chain, so burn to a private tzk1… address to re-enter the private pool directly.