# Get started with CenterChain

The path an integrator or an agent takes, in the order the documentation gives it, with the
steps that do not work marked as such. Every fact below carries the file and line of the
canonical documentation it came from. Where a value is measured rather than documented, the
measurement is dated.

Measured: 2026-09-30. Sources are `centerchain-docs/docs/**` unless another repository is named.

## 0. Read the network status first

One public network exists today: `centerchain-testnet-1`, four validators, public RPC and REST.
There is no production network: the network table has a production row whose value reads
"Does not exist", and no mainnet chain id, genesis file or validator set is published. The
testnet is closed and unauthenticated and its tokens are valueless, so it is a place to read
state, not to hold anything.

Sources: `docs/start-here/network-status.md:15-19`, `:21-24`, `:92-93`

Page: https://docs.centerchain.org/docs/start-here/network-status

## 1. Read the orientation pages

- Introduction: https://docs.centerchain.org/docs/start-here/introduction
- Modules overview: https://docs.centerchain.org/docs/modules/overview
- Transfers and compliance: https://docs.centerchain.org/docs/concepts/transfers-and-compliance
- Two-phase execution: https://docs.centerchain.org/docs/concepts/two-phase-execution
- Glossary: https://docs.centerchain.org/docs/concepts/glossary

## 2. Build the binary locally

Requirements: Go as the toolchain directive in `go.mod` requires, `make`, and Node.js 20 or
newer only if you build the documentation site or the frontend. The Ignite CLI is not needed;
the repository builds and runs with `make` and `go`, and Ignite is only used for scaffolding
new chains.

```bash
# The published quickstart leaves the clone address as a placeholder:
# docs/start-here/quickstart.md:28
git clone <repository-url> centerchain
cd centerchain
make install
centerchaind version
```

`make install` runs `go mod verify` and installs `centerchaind` into `$(go env GOPATH)/bin`.
The repository address is named on the pin page of the documentation
(https://docs.centerchain.org/docs/api-reference/pin). It is not repeated here because the
address that page names, `github.com/CoinCenterGlobal/centerchain`, answered 404 when this
file was written on 2026-09-30, so publishing a clone command with it would send every reader
to a dead target.

Sources: `docs/start-here/quickstart.md:16-23`, `:26-38`, `docs/api-reference/pin.md:12-16`

## 3. Run the local development chain

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

`init.sh` is idempotent by default: if `DEVNET_HOME` already holds a valid genesis and config
for `centerchain-1`, it exits successfully and touches nothing. `REINIT=1` stops the node and
deletes the node home and the fixtures file, and the script can also delete an existing home
with an invalid or incomplete genesis even without `REINIT=1`. Back up the home directory, and
confirm no node owns the ports, before running either script.

| Service      | URL after start          |
| ------------ | ------------------------ |
| CometBFT RPC | `http://127.0.0.1:26657` |
| Cosmos REST  | `http://127.0.0.1:1317`  |
| gRPC         | `127.0.0.1:9090`         |

The port values have one source of truth, `tests/devnet/ports.json`. Read that file rather than
assuming, and confirm `/status` reports `centerchain-1` before querying or signing.

```bash
curl -s http://127.0.0.1:26657/status | jq '.result.node_info.network'
```

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.

Sources: `docs/start-here/quickstart.md:42-58`, `:60-63`, `:65-83`

## 4. Point the CLI at the public testnet

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

RPC and REST share one base URL per node:

| Node       | Base URL                            |
| ---------- | ----------------------------------- |
| validator0 | `https://rpc0.test.centerchain.org` |
| validator1 | `https://rpc1.test.centerchain.org` |
| validator2 | `https://rpc2.test.centerchain.org` |
| validator3 | `https://rpc3.test.centerchain.org` |

Sources: `docs/start-here/quickstart.md:129-140`, `docs/start-here/network-status.md:59-64`

## 5. Query what answers

Measured 2026-09-30 on validator0. CORS is `access-control-allow-origin: *`, so a browser or an
agent can read these directly.

| Request                                           | Result                               |
| ------------------------------------------------- | ------------------------------------ |
| `/cosmos/base/tendermint/v1beta1/node_info`       | 200, network `centerchain-testnet-1` |
| `/cosmos/base/tendermint/v1beta1/blocks/latest`   | 200, a live block                    |
| `/cosmos/auth/v1beta1/params`                     | 200                                  |
| `/cosmos/bank/v1beta1/supply/by_denom?denom=ucen` | 200                                  |
| `/cosmos/nft/v1beta1/classes`                     | 200, empty                           |
| `/centerchain/liquidity/v1/params`                | 200, real module parameters          |
| `/centerchain/liquidity/v1/pools`                 | 200, empty                           |
| `/centerchain/income/v1/params`                   | 200                                  |
| `/centerchain/income/v1/streams`                  | 200, empty                           |

```bash
curl -s https://rpc0.test.centerchain.org/cosmos/base/tendermint/v1beta1/node_info
curl -s https://rpc0.test.centerchain.org/cosmos/base/tendermint/v1beta1/blocks/latest
```

The block height changes every block, so read it rather than copying it from a document.

Sources: live measurement 2026-09-30; documented example at
`docs/start-here/network-status.md:66-70`

## 6. What does not answer, so you do not wait for it

| Request                               | Result                         | Consequence                              |
| ------------------------------------- | ------------------------------ | ---------------------------------------- |
| `/cosmos/tx/v1beta1/txs?query=...`    | 200 with `total: "0"`          | No transaction can be listed or searched |
| `/cosmos/tx/v1beta1/blocks/{height}`  | 501 Not Implemented            | No per-block transaction list            |
| `/centerchain/tokenfactory/v1/params` | 501 Not Implemented, `code 12` | No tokenfactory parameters over HTTP     |
| `/cosmos/tokenfactory/v1/params`      | 501 Not Implemented, `code 12` | Same, second path                        |
| gRPC-web POST                         | 404                            | No gRPC from a browser                   |

Sources: live measurement 2026-09-30; recorded as RIT-029 and RIT-030 in
`centerchain-site/docs/project/status.md`, with the original measurement in
`centerchain-site/docs/acceptance/evidence.md:712-761`

The faucet is an address only. There is no HTTP faucet service, so tokens cannot be requested
from a page: `docs/start-here/network-status.md:81`.

The REST coverage page in the documentation is generated from an OpenAPI document and lists
five tokenfactory routes (`docs/api-reference/rest/coverage.md:17-18`). The live endpoint
answers 501, so report the measurement, not the generated table.

## 7. Things this site does not claim

- No production network, and no announced one.
- No compatibility with another chain or a token standard. The published documentation contains
  no such claim.
- No expiring or dated permission. The documentation calls the swap permission time-boxed
  (`docs/concepts/glossary.md:41`), but the message definition carries no deadline or expiry
  field.
- No audit firm, no audit date, no regulatory status, no licence number, no registered company
  address, no jurisdiction of law. Searched 2026-09-30 in the canonical documentation: 0
  matches for each.
- No yield, rate, total value locked, transaction count, user count or uptime figure. No source
  measures any of them.
- `explorer.centerchain.org` and `censcan.com` do not resolve. Measured 2026-09-30: `dig
+short` returns nothing, `curl` returns 000. The explorer is at
  https://centerchain.org/explorer/ .

## 8. Where the numbers come from

| Number                                                                          | Source                                     |
| ------------------------------------------------------------------------------- | ------------------------------------------ |
| Denom creation fee `10000000ucen`                                               | `docs/modules/tokenfactory.md:82`          |
| Subdenom 44 bytes, creator segment 75 bytes                                     | `docs/modules/tokenfactory.md:31-32`       |
| 100,000 denoms, 100,000 blacklisted addresses                                   | `docs/modules/tokenfactory.md:125-127`     |
| Fee scale 1,000,000, defaults 3,000 / 300,000 / 700,000 ppm                     | `docs/modules/liquidity.md:44`, `:206-207` |
| Listing deposit `1000000ucen`, expiry 100,000 blocks default, 1,000,000 maximum | `docs/modules/nftmarket.md:116-118`        |
| 1,000 streams, 50 NFT claims per message                                        | `docs/modules/income.md:163-164`           |
| Four validators on one host                                                     | `docs/start-here/network-status.md:77`     |
| Initial `ucen` supply 1,000,000 CEN                                             | `docs/start-here/network-status.md:80`     |
