← All documentation

Getting Started with WarpCoin

This guide takes you from a clone of the repository to a running node, a wallet, mining, and your first payment. WarpCoin is a single Go binary with no third-party dependencies.

1. Get the binary

The fastest path is to download a prebuilt build for Windows, macOS, or Linux — one self-contained warpcoin executable, no installer. Unpack the archive and you are ready to go:

tar xzf warpcoin-v1.1.0-*.tar.gz      # macOS/Linux
cd warpcoin-v1.1.0-*
./warpcoin version

Prefer to build from source? Requires Go 1.24+:

git clone https://github.com/kevinsegal/warpcoin
cd warpcoin
make build            # produces ./bin/warpcoin
# or: go build -o bin/warpcoin ./cmd/warpcoin

Verify either way:

./warpcoin info

2. Create a wallet

WarpCoin supports multiple wallets, each recoverable from a seed phrase.

./warpcoin wallet new --name primary          # 12-word recovery phrase
./warpcoin wallet new --name savings --words 24
./warpcoin wallet list                         # all wallets; * marks the default
./warpcoin wallet address                       # address of the default wallet

wallet new prints a recovery phrase once — write it down and store it offline; it is the only way to restore the wallet. The keystore is also encrypted at rest (PBKDF2-SHA256 + AES-256-GCM): wallet new prompts for a passphrase, or supply one via WARP_WALLET_PASSPHRASE / --passphrase-file, or pass --plaintext (not recommended).

Restore or move a wallet with its phrase (or a raw private key):

./warpcoin wallet import --name restored --mnemonic "word word … word"
./warpcoin wallet import --name cold --key <hex-private-key>
./warpcoin wallet use savings                   # switch the default wallet

Wallets live in ~/.warpcoin/wallets/. Value and contract commands accept --wallet <name> to choose which one signs (defaulting to the store default). See the Wallet Platform guide for the full reference.

3. Run a node (and mine)

Start a full node that mines to your wallet:

./bin/warpcoin node --mine --miner-address $(./bin/warpcoin wallet address)

This listens for peers on :8338 and serves JSON-RPC on 127.0.0.1:8339. On a brand-new local network the difficulty starts low, so blocks are found quickly and your balance grows.

Check status and balance from another terminal:

./bin/warpcoin status
./bin/warpcoin balance

4. Join an existing network

Point your node at one or more seeds (or a DNS seed domain):

./bin/warpcoin node --seeds seed1.example.net:8338,seed2.example.net:8338

Your node performs a handshake, discovers more peers, and syncs the chain by height.

5. Send a payment

./bin/warpcoin send --to <recipient-address> --amount 12.5 --fee 0.0001

The transaction is built, signed locally, and broadcast. A miner includes it in a block within roughly the 30-second target block time; check the recipient's balance afterward:

./bin/warpcoin balance <recipient-address>

6. Mine with extra hardware

Attach a standalone miner (CPU here; a GPU miner targets the same API) to any node:

./bin/warpcoin miner --rpc http://127.0.0.1:8339 --address <your-address> --cpus 8

See the Mining guide for the work format and GPU integration.

7. Run a block explorer

./bin/warpcoin explorer --http 0.0.0.0:8340
# Browse http://localhost:8340  ·  supply API at /api/supply

8. Run the market data service

./bin/warpcoin market --http 0.0.0.0:8341
# CoinGecko/CMC ticker + orderbook API; dashboard at http://localhost:8341

Prefer a GUI?

The desktop app bundles a node, a multi-wallet manager (create with a recovery phrase or import by phrase/key, switch wallets from a dropdown), and a miner with a dashboard for Windows and macOS.

Deploying servers

For seed, DNS-seed, verifier, explorer, market, and miner roles via Docker, systemd, or Kubernetes, see the deployment guide.

Common flags

Flag Used by Meaning
--datadir node, explorer, dnsseed chain data directory
--p2p node, explorer, dnsseed P2P listen address (default :8338)
--rpc node, explorer, dnsseed JSON-RPC address (default 127.0.0.1:8339)
--seeds node, explorer, dnsseed comma-separated peers to dial
--maxpeers node peer cap (raise for seeds)
--mine, --miner-address, --cpus node enable mining
--explorer node also serve the explorer on this address
--http explorer, market HTTP listen address
--domain, --dns dnsseed DNS seed domain and listen address