Skip to main content

Quickstart

What you’ll do​

  • Install the zeckit CLI
  • Start a local devnet
  • Run an end-to-end test
tip

Prerequisites: You’ll need Rust (Cargo) and Docker installed and working.

Before you install, check Compatibility for supported platforms + install links.

Install​

cargo install zeckit
note

Already installed? If you installed earlier and want the newest version:

cargo install zeckit --force

Start a devnet​

zeckit up --backend zaino

Expected output (example)​

zeckit up --backend zaino prints Starting Devnet progress, not the Devnet Status screen. Early output looks like this (Docker log lines vary; the mining address is the default unless you pass --miner-address):

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ZecKit - Starting Devnet
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Starting services: zebra-miner, zebra-sync, zaino, faucet-zaino

📝 Configuring Zebra mining address...
✓ Updated docker/configs/zebra.toml
Mining to: tmBsTi2xWTjUdEXnuTceL7fecEQKeWaPDJd

... Docker Compose creates/starts containers ...

Starting services...

Waiting for Zebra Miner node to initialize...

[1.1/3] Zebra Miner ready
Waiting for Zebra Sync node to initialize and peer...

[1.2/3] Zebra Sync Node ready
[1/3] Zebra Cluster ready (100%)

[2/3] Zaino ready (100%)
[3/3] Faucet ready (100%)

... wallet sync, optional shielding, background miner ...

✓ Devnet is running with continuous mining
New blocks will be mined every 15 seconds
Press Ctrl+C to stop
tip

The ZecKit - Devnet Status banner and summary lines (Zebra heights, faucet balance) come from zeckit status, not from zeckit up. Run zeckit status after startup to verify services; heights and balances change over time.

Run tests​

zeckit test

Expected output (example)​

Run this with the devnet already up (zeckit up). When everything is healthy, the smoke suite prints seven checks and ends with 7 passed, 0 failed (no trailing error line). Details in the middle (balances, TXID snippets) vary by run:

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ZecKit - Running Smoke Tests
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

[0/7] Cluster synchronization... PASS
[1/7] Zebra RPC connectivity (Miner)... PASS
[2/7] Faucet health check... PASS
[3/7] Faucet address retrieval... PASS
[4/7] Wallet sync capability... PASS
[5/7] Wallet balance and shield...
Checking wallet balance via API...
Transparent: … ZEC
Orchard: … ZEC
…
PASS
[6/7] Shielded send (E2E)...
Checking faucet Orchard balance...
...
✓ E2E Golden Flow Complete:
- Faucet had shielded funds (Orchard)
- Sent 0.05 ZEC to recipient UA
- Transaction broadcast successfully

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Summary: 7 passed, 0 failed
tip

[0/7] may show WARN (non-fatal) … if the sync node lags in regtest; the run can still count as passed for that step. [4/7] may print LAG (retrying in 10s)... a few times before PASS while the wallet/indexer catch up. On failure you’ll see FAIL lines, Summary: … passed, … failed, and Error: Health check failed: N test(s) failed.

Try the sample project​

git clone https://github.com/Supercoolkayy/zeckit-contributor-sample
cd zeckit-contributor-sample
./test-local.sh
tip

Next steps

  • Read the CLI docs under CLI in the sidebar
  • If something looks off, jump to Troubleshooting