TypeScript toolkit to create and deploy ERC-20 tokens on Robinhood Chain — the permissionless, EVM-compatible Layer 2 launched July 2026.
Robinhood Chain is fully Ethereum-compatible (Arbitrum stack), so standard ERC-20 contracts deploy with familiar tooling.
| Mainnet | Testnet | |
|---|---|---|
| Chain ID | 4663 |
46630 |
| RPC | https://rpc.mainnet.chain.robinhood.com |
https://rpc.testnet.chain.robinhood.com |
| Explorer | robinhoodchain.blockscout.com | explorer.testnet.chain.robinhood.com |
| Gas token | ETH | ETH |
| Faucet | — | faucet.testnet.chain.robinhood.com |
# Install dependencies
npm install
# Compile the ERC-20 contract
npm run compile
# Configure deployer wallet
cp .env.example .env
# Edit .env and set PRIVATE_KEY
# Check network info and wallet balance (testnet)
npm run info
# Deploy a token on testnet (recommended first)
npm run create-token -- \
--name "My Token" \
--symbol MTK \
--supply 1000000 \
--decimals 18 \
--network testnet
# Deploy on mainnet with minting enabled + verify on Blockscout
npm run create-token -- \
--name "My Token" \
--symbol MTK \
--supply 1000000 \
--mintable \
--network mainnet \
--verify| Flag | Required | Description |
|---|---|---|
--name |
Yes | Token name |
--symbol |
Yes | Ticker symbol |
--supply |
Yes | Total supply (human-readable) |
--decimals |
No | Decimals (default: 18) |
--mintable |
No | Allow owner to mint more tokens |
--network |
No | mainnet or testnet (default: testnet) |
--verify |
No | Auto-verify on Blockscout after deploy |
npm run verify -- \
--address 0xYourContractAddress \
--name "My Token" \
--symbol MTK \
--supply 1000000 \
--owner 0xYourWalletAddress \
--network testnetnpm run info -- --network testnetimport { deployToken } from "robinhood-bundler";
const result = await deployToken(
{
name: "My Token",
symbol: "MTK",
supply: "1000000",
decimals: 18,
mintable: false,
network: "testnet",
},
{ privateKey: process.env.PRIVATE_KEY! }
);
console.log(result.address, result.explorerUrl);contracts/RobinhoodToken.sol is a standard ERC-20 built on OpenZeppelin with:
- Configurable name, symbol, supply, and decimals
- Burnable (any holder can burn their tokens)
- Optional minting (owner-only, disabled by default)
- Ownable (deployer receives full supply and ownership)
- Node.js >= 20
- ETH on Robinhood Chain for gas (bridge via Arbitrum bridge or testnet faucet)
- Never commit your private key. Use
.envlocally only. - Test on testnet before mainnet deployments.
- Contract deployments are permanent — double-check name, symbol, and supply before confirming.