Skip to main content

Getting Started

This guide walks you through the fastest path to interacting with the BelizeChain network — from local development to your first transaction.

1. Understand the Network

BelizeChain is a sovereign Layer-1 blockchain for Belize with two currencies:

  • DALLA — the native token, used for fees, staking, and governance
  • bBZD — a stablecoin pegged 1:1 to the Belize Dollar for everyday payments

Blocks are produced every 6 seconds, finality follows via GRANDPA, and the runtime version in force is reported live on the testnet page — it changes with every forkless upgrade, so it is not restated here.

2. Run a Local Development Node

The fastest way to explore is a local development chain. You need Rust installed:

git clone https://github.com/BelizeChain/belizechain.git
cd belizechain
cargo build --release
./target/release/belizechain-node --dev

--dev starts a throwaway chain with a funded development account. The node exposes a unified JSON-RPC endpoint on port 9944 (both WebSocket and HTTP; legacy 9933 is not used).

3. Connect

With a local node running, connect using the GEM SDK:

npm install @belizechain/gem-sdk @polkadot/api @polkadot/api-contract
const { GemSDK } = require('@belizechain/gem-sdk');

const sdk = new GemSDK('ws://localhost:9944');
await sdk.connect();

const header = await sdk.api.rpc.chain.getHeader();
console.log(`Latest block: #${header.number}`);

Or query the chain directly over HTTP:

curl -X POST http://localhost:9944 \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"system_chain","params":[]}'

4. Make Your First Transfer

In a development chain, use a pre-funded account to transfer DALLA:

const { GemSDK } = require('@belizechain/gem-sdk');

const sdk = new GemSDK('ws://localhost:9944');
await sdk.connect();

await sdk.dallaTransfer(contractAddress, sender, recipientAddress, amount);

On the live testnet, wallets such as Maya Wallet provide the same operations through a graphical interface.

5. Next Steps