Developer Quickstart
Build on Sentrix in 10 minutes. Deploy a smart contract, read chain state, and send transactions.
Connect to Sentrix
Testnet (recommended for development)
| RPC URL | https://testnet-rpc.sentrixchain.com/rpc |
| Chain ID | 7120 |
| Explorer | https://scan.sentrixchain.com |
| Faucet | https://faucet.sentrixchain.com |
MetaMask setup
Settings → Networks → Add network manually:
| Field | Value |
|---|---|
| Network name | Sentrix Testnet |
| RPC URL | https://testnet-rpc.sentrixchain.com/rpc |
| Chain ID | 7120 |
| Symbol | SRX |
| Block Explorer | https://scan.sentrixchain.com |
Get test SRX from the faucet.
Deploy a Smart Contract (Remix)
- Open remix.ethereum.org
- Create
Token.sol:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
contract MyToken {
string public name = "MyToken";
uint256 public totalSupply = 1_000_000 * 10**18;
mapping(address => uint256) public balanceOf;
constructor() {
balanceOf[msg.sender] = totalSupply;
}
function transfer(address to, uint256 amount) external returns (bool) {
require(balanceOf[msg.sender] >= amount);
balanceOf[msg.sender] -= amount;
balanceOf[to] += amount;
return true;
}
}
- Compile → Solidity 0.8.20+
- Deploy → Environment: "Injected Provider — MetaMask" → Deploy
- Confirm in MetaMask → mined in ~1s
ethers.js / viem
import { createPublicClient, createWalletClient, http } from 'viem'
import { privateKeyToAccount } from 'viem/accounts'
// Read-only client
const client = createPublicClient({
transport: http('https://testnet-rpc.sentrixchain.com/rpc'),
})
const height = await client.getBlockNumber()
const balance = await client.getBalance({ address: '0x...' })
// Signing client (for transactions)
const account = privateKeyToAccount('0x...')
const wallet = createWalletClient({
account,
transport: http('https://testnet-rpc.sentrixchain.com/rpc'),
})
const hash = await wallet.sendTransaction({
to: '0x...',
value: 1000000000000000000n, // 1 SRX in wei
})
REST API
# Chain info
curl https://testnet-rpc.sentrixchain.com/chain/info
# Get balance
curl https://testnet-rpc.sentrixchain.com/accounts/0xYOUR_ADDRESS/balance
# List validators
curl https://testnet-rpc.sentrixchain.com/validators
# Prometheus metrics
curl https://testnet-rpc.sentrixchain.com/metrics
JSON-RPC Methods
All standard Ethereum JSON-RPC methods are supported:
# Chain ID
curl -X POST https://testnet-rpc.sentrixchain.com/rpc \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'
# Block number
curl -X POST -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' \
https://testnet-rpc.sentrixchain.com/rpc
# Get balance (returns wei)
curl -X POST -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_getBalance","params":["0xYOUR_ADDRESS","latest"],"id":1}' \
https://testnet-rpc.sentrixchain.com/rpc
Full method list: eth_chainId, eth_blockNumber, eth_getBalance, eth_getTransactionCount, eth_getCode, eth_getStorageAt, eth_call, eth_estimateGas, eth_gasPrice, eth_sendRawTransaction, eth_getTransactionByHash, eth_getTransactionReceipt, eth_getBlockByNumber, eth_getBlockByHash, net_version, net_listening.
Hardhat / Foundry
// hardhat.config.js
module.exports = {
networks: {
sentrixTestnet: {
url: "https://testnet-rpc.sentrixchain.com/rpc",
chainId: 7120,
accounts: [process.env.PRIVATE_KEY],
},
},
};
# foundry.toml
[rpc_endpoints]
sentrix_testnet = "https://testnet-rpc.sentrixchain.com/rpc"
Gas Model
Sentrix uses EIP-1559:
| Parameter | Value |
|---|---|
| Base fee | 10,000 sentri (burned) |
| Block gas limit | 30,000,000 |
| Block gas target | 15,000,000 |
| 1 SRX | 10^18 wei = 10^8 sentri |
Next Steps
- Smart Contract Guide — full Remix walkthrough
- MetaMask Setup — step-by-step with screenshots
- API Reference — all REST + RPC endpoints
- Network Info — mainnet vs testnet config
- Validator Guide — run your own node