Quickstart
1 · Network
Chain ID 484148, gas coin VELA, RPC at /rpc.
2 · Test VELA
Fund a disposable account from the faucet.
3 · Deploy
Use Foundry, Hardhat, viem or ethers as normal.
curl -s https://hubchain.thehubexchange.com/rpc \
-H 'Content-Type: application/json' \
--data '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}'Network details
| Network name | Velana Chain Testnet |
|---|---|
| Chain ID | 484148 (0x76334) |
| Native coin | VELA · 18 decimals · test-only, no monetary value |
| RPC (HTTPS) | https://hubchain.thehubexchange.com/rpc |
| Explorer | https://hubchain.thehubexchange.com/explorer.html |
| Block time | About 1 second |
| EVM version | Cancun |
| Client | Anvil v1.7.1, single node |
| WebSocket | Not available |
| Faucet | 10 VELA per address / 24 h, one claim per IP / hour |
Chain ID 484148 is an experimental selection, not registered or guaranteed unique. If you added this network as "Hub Chain" before, remove it and add Velana Chain again.
JSON-RPC methods
The public gateway forwards a deliberate allowlist of standard Ethereum JSON-RPC methods over HTTPS POST. Batches of up to 20 requests are accepted. Node administration, impersonation, unlocked-account sending and WebSocket subscriptions are not available.
| Method | Use |
|---|---|
eth_chainId | Chain ID (0x76334) |
eth_blockNumber | Latest block number |
eth_getBlockByNumber / eth_getBlockByHash | Block data |
eth_getTransactionByHash / eth_getTransactionReceipt | Transaction and receipt |
eth_getBalance / eth_getTransactionCount | Account balance and nonce |
eth_getCode / eth_getStorageAt | Contract code and storage |
eth_call / eth_estimateGas | Read-only calls and gas estimates |
eth_gasPrice / eth_maxPriorityFeePerGas / eth_feeHistory | Fee data |
eth_getBlockTransactionCountByHash / ByNumber | Transaction counts |
eth_sendRawTransaction | Submit a transaction signed locally |
net_version / net_listening / net_peerCount | Network info |
web3_clientVersion / web3_sha3 | Client info and Keccak-256 |
Foundry
# Point Foundry at Velana Chain
export VELA_RPC_URL=https://hubchain.thehubexchange.com/rpc
cast chain-id --rpc-url "$VELA_RPC_URL" # 484148
cast block-number --rpc-url "$VELA_RPC_URL"
# Import a dedicated, disposable test key (prompted, never on the command line)
cast wallet import velana-test --interactive
# Deploy a contract
forge create src/MyToken.sol:MyToken \
--rpc-url "$VELA_RPC_URL" --account velana-test --broadcastHardhat
// hardhat.config.js
require("@nomicfoundation/hardhat-toolbox");
module.exports = {
solidity: { version: "0.8.24", settings: { evmVersion: "cancun" } },
networks: {
velana: {
url: process.env.VELA_RPC_URL || "https://hubchain.thehubexchange.com/rpc",
chainId: 484148,
accounts: process.env.VELANA_TEST_KEY ? [process.env.VELANA_TEST_KEY] : [],
},
},
};
// npx hardhat run scripts/deploy.js --network velanaviem
import { createPublicClient, defineChain, http, formatEther } from "viem";
export const velana = defineChain({
id: 484148,
name: "Velana Chain Testnet",
nativeCurrency: { name: "VELA", symbol: "VELA", decimals: 18 },
rpcUrls: { default: { http: ["https://hubchain.thehubexchange.com/rpc"] } },
blockExplorers: {
default: { name: "Velana Explorer", url: "https://hubchain.thehubexchange.com/explorer.html" },
},
testnet: true,
});
const client = createPublicClient({ chain: velana, transport: http() });
console.log(await client.getBlockNumber());
console.log(formatEther(await client.getBalance({ address: "0xYourTestAddress" })), "VELA");ethers v6
import { JsonRpcProvider, formatEther } from "ethers";
const provider = new JsonRpcProvider(
"https://hubchain.thehubexchange.com/rpc",
{ chainId: 484148, name: "velana-testnet" },
{ staticNetwork: true }
);
console.log(await provider.getBlockNumber());
console.log(formatEther(await provider.getBalance("0xYourTestAddress")), "VELA");Deploy a contract
- Create a new, empty wallet account just for testing and fund it from the faucet.
- Write and compile your contract with the Cancun EVM target.
- Deploy with any tool above, then search the contract address in the explorer.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;
contract Greeter {
string public greeting = "Hello, Velana Chain";
event Greeted(address indexed by, string greeting);
function setGreeting(string calldata next) external {
greeting = next;
emit Greeted(msg.sender, next);
}
}Launch a coin
The no-code token launcher deploys a fixed-supply OpenZeppelin ERC-20 through an on-chain factory. The whole supply goes to your connected wallet; there is no owner and no extra minting. A launch does not create a trading market or liquidity. Factory details are in launcher-config.json.