Developers

Quickstart

This runs a local single-node chain on your machine. It is disposable, bound to loopback, and fully scripted. You will have a running chain with two fixture accounts, public dashboards, and a full module suite in under 5 minutes.

Prerequisites

Go

Per go.mod (toolchain directive at the top is authoritative).

Node.js

≥ 20 (only for the docs site and Vue dashboards).

make

Any version. Primary build entry point.

You do not need Ignite CLI. The repository builds and runs with make and go; Ignite is only used for scaffolding new chains.

1. Build the binary

git clone [repository-url] centerchain
cd centerchain
make install

This runs go mod verify and installs centerchaind into $(go env GOPATH)/bin.

Check it:

centerchaind version

2. Initialize and start the local devnet

The repository ships a scripted, reproducible devnet under tests/devnet:

bash tests/devnet/init.sh   # builds, inits, recovers keys, patches genesis, gentx
bash tests/devnet/start.sh  # starts the node

Important

Idempotent by default: If DEVNET_HOME already holds a valid genesis and config for centerchain-1, it exits successfully without touching anything. It does not start the node.

Endpoints after start

CometBFT RPC

http://127.0.0.1:26657

Cosmos REST

http://127.0.0.1:1317

gRPC

127.0.0.1:9090

Port values have a single source of truth: tests/devnet/ports.json. Read that file rather than assuming.

Confirm it's the right chain:

curl -s http://127.0.0.1:26657/status | jq '.result.node_info.network'
# → "centerchain-1"

Fixture accounts

The devnet keyring uses the test backend and holds two fixture accounts: a validator and an issuer. They are test material for this disposable chain only. tests/devnet/init.sh is the source of truth for their names and balances.

3. Use the dashboards

Once the node is running, two operator surfaces are served from ui/:

Investor dashboard

http://localhost:8000/ui/investor.html

Portfolio view, positions, rewards, NFT gallery

Devnet console

http://localhost:8000/ui/devnet-console.html

Chain state, module state, transaction builder, query explorer

Serve them from the repository root with any static file server:

cd ui && python3 -m http.server 8000

4. Run the tests

make test

go vet, unit tests, monitor fixtures, production-config checks

make test-race

Same unit tests under the race detector

make test-devnet

Devnet integration suite

make lint

golangci-lint

Regenerate protobuf output after changing anything under proto/centerchain/:

make proto-gen

Connect to the public testnet

Point the CLI at a public endpoint. RPC and REST share one base URL per node:

centerchaind config chain-id centerchain-testnet-1
centerchaind config node https://rpc0.test.centerchain.org
centerchaind keys list --keyring-backend test

Its tokens are valueless test tokens, and all four of its validators run on a single host. Read Network status before relying on it.