Nanvil Neo3 local dev node

Neo3 local development, instantly

Nanvil is a Neo3 dev node inspired by Foundry Anvil. Spin up chains, prefund accounts, fork mainnet, cheat time — with a built-in block explorer.

Latest release

Loading…

Pre-built nanvil, ncast, and nsmith for Linux, macOS, and Windows.

curl -sSL … | tar xz
./nanvil start

Prefer to build yourself? Build from source · Changelog

Everything you need for Neo3 dev

Local chain, dev RPC cheats, mainnet forks, and a built-in explorer — powered by nanvil.

Local chain

Single-validator in-memory Neo3 network with auto-mining on every submitted transaction.

Prefunded accounts

Configurable dev mnemonic and GAS balances — keys printed on startup and queryable via RPC.

Block explorer

Web UI on port 8546 with live WebSocket feed, contract deploys, and embedded documentation.

Mainnet / testnet forks

Lazy StateService fork at any block height — deploy and test against real remote state locally.

Dev RPC cheats

nanvil_mine, time travel, snapshots, mempool control, and evm_* aliases.

Included in every release

The Neo3 toolkit

Three CLIs modeled after Foundry — run a node, talk to RPC, compile contracts.

RPC client like Foundry cast

ncast

Send GAS, invoke contracts, deploy NEF files, and inspect chain state against any Neo JSON-RPC endpoint — usually your local nanvil node.

  • NEP-17 transfers and balance lookups
  • Signed deploys and contract calls
  • Raw RPC, mempool, and live watch
ncast
$ export NCAST_RPC=http://127.0.0.1:8545

$ ncast balance NRBs4Wc8vuFJY5sN7WvJNRzVduAeXQ8TQg
10000 GAS

$ ncast send --wif <wif> <to> 1
$ ncast call gas decimals
8

$ ncast deploy --wif <wif> \
    --nef contract.nef \
    --manifest contract.manifest.json
Compiler suite like Foundry forge

nsmith

Compile smart contracts in Go, Python, C#, or Java to .nef + .manifest.json — then deploy with ncast.

Gobuilt-in
Pythonneo3-boa
C#nccs
Javaneow3j
nsmith
$ nsmith compile --lang go ./main.go --out contract
language: go
nef:      contract.nef

$ nsmith install --lang python
$ nsmith compile --lang python ./contract.py

$ nsmith init MyToken --lang go
$ nsmith doctor --all

Default services

After ./nanvil start, these endpoints are available locally.

Service URL
JSON-RPC http://127.0.0.1:8545
Block explorer http://127.0.0.1:8546
Documentation (in explorer) http://127.0.0.1:8546/docs/