테스트넷 접속 정보
Hardhat, Foundry, wagmi, ethers, viem를 마루 테스트넷에 연결하는 방법을 안내합니다. 엔드포인트, 체인 ID, 지갑 설정, 환경변수 템플릿을 모두 제공합니다.
툴링을 마루 테스트넷에 연결하기 위해 필요한 정보를 모두 모았습니다. EVM 호환 체인이라 Hardhat / Foundry / wagmi / ethers / viem에 마루 특화 패치가 필요하지 않습니다. 아래 설정으로 네트워크를 추가하고 파우셋에서 테스트 지갑 자금을 받으면 연결이 완료됩니다.
네트워크 설정
| 필드 | 값 |
|---|---|
| Network name | Maroo Testnet |
| Network ID | maroo-testnet |
| Chain ID | 450815 |
| Native currency | tOKRW (Testnet OKRW), 18 decimals, base unit aokrw |
| RPC | https://rpc-testnet.maroo.io |
| WebSocket | wss://ws-testnet.maroo.io |
| Block Explorer | https://explorer-testnet.maroo.io |
| Faucet | https://faucet.maroo.io |
| KYC (mock) | https://kyc-testnet.maroo.io |
| Indexer (Blockscout API) | https://explorer-testnet.maroo.io/blockscout/api/v2 |
Mainnet chain ID는
815이며(testnet은 450815), 엔드포인트는 같은 명명 패턴을 따르되 -testnet 세그먼트가 빠집니다(예: rpc.maroo.io).도메인 네이밍 규칙
마루 서브도메인은 안정적인 패턴을 따르므로 툴링이 testnet ↔ mainnet 페어를 도출할 수 있습니다.
- Mainnet:
<service>.maroo.io - Testnet:
<service>-testnet.maroo.io - 환경 무관 (단일 정식 URL):
maroo.io(랜딩),litepaper.maroo.io,docs.maroo.io
| 서비스 | Testnet | Mainnet |
|---|---|---|
| RPC | rpc-testnet.maroo.io | rpc.maroo.io |
| WebSocket | ws-testnet.maroo.io | ws.maroo.io |
| Explorer | explorer-testnet.maroo.io | explorer.maroo.io |
| Faucet | faucet.maroo.io | — (mainnet 파우셋 없음) |
| KYC | kyc-testnet.maroo.io | kyc.maroo.io |
| Indexer | api-testnet.maroo.io | api.maroo.io |
viem 체인 설정
viem 셋업에 그대로 사용합니다:
import { defineChain } from 'viem';
export const marooTestnet = defineChain({
id: 450815,
name: 'Maroo Testnet',
network: 'maroo-testnet',
nativeCurrency: {
name: 'Testnet OKRW',
symbol: 'tOKRW',
decimals: 18,
},
rpcUrls: {
default: {
http: ['https://rpc-testnet.maroo.io'],
webSocket: ['wss://ws-testnet.maroo.io'],
},
},
blockExplorers: {
default: {
name: 'Maroo Explorer',
url: 'https://explorer-testnet.maroo.io',
},
},
testnet: true,
}); viem 체인 설정
wagmi에서 사용 시
createConfig의 chains 배열에 marooTestnet을 전달합니다.MetaMask에 추가
MetaMask → Settings → Networks → Add network → Add a network manually. 다음 입력:
저장 후 Maroo Testnet으로 전환하고 파우셋(
- Network name:
Maroo Testnet - New RPC URL:
https://rpc-testnet.maroo.io - Chain ID:
450815 - Currency symbol:
tOKRW - Block explorer URL:
https://explorer-testnet.maroo.io
저장 후 Maroo Testnet으로 전환하고 파우셋(
https://faucet.maroo.io)에서 테스트 tOKRW를 수령합니다.Quick-start 스니펫
ethers.js v6:
import { JsonRpcProvider } from 'ethers';
const provider = new JsonRpcProvider('https://rpc-testnet.maroo.io');
const block = await provider.getBlockNumber();
console.log('current block:', block); Quick-start 스니펫
web3.js:
import Web3 from 'web3';
const web3 = new Web3('https://rpc-testnet.maroo.io');
const block = await web3.eth.getBlockNumber();
console.log('current block:', block); Quick-start 스니펫
Hardhat (
hardhat.config.ts):import { HardhatUserConfig } from 'hardhat/config';
import '@nomicfoundation/hardhat-toolbox';
const config: HardhatUserConfig = {
solidity: '0.8.24',
networks: {
marooTestnet: {
url: 'https://rpc-testnet.maroo.io',
chainId: 450815,
accounts: [process.env.PRIVATE_KEY!],
},
},
};
export default config; Quick-start 스니펫
Foundry (
foundry.toml):[rpc_endpoints]
maroo_testnet = "https://rpc-testnet.maroo.io"
[etherscan]
maroo_testnet = { key = "unused", url = "https://explorer-testnet.maroo.io/blockscout/api" } 환경변수 템플릿
.env에 그대로 사용합니다:# Maroo Testnet
MAROO_RPC_URL=https://rpc-testnet.maroo.io
MAROO_WS_URL=wss://ws-testnet.maroo.io
MAROO_CHAIN_ID=450815
MAROO_NETWORK=maroo-testnet
MAROO_EXPLORER_URL=https://explorer-testnet.maroo.io
MAROO_FAUCET_URL=https://faucet.maroo.io
MAROO_INDEXER_URL=https://explorer-testnet.maroo.io/blockscout/api/v2
MAROO_KYC_URL=https://kyc-testnet.maroo.io 테스트넷에서 할 수 있는 것
- 파우셋에서 테스트 tOKRW를 수령합니다.
- 계정 간 기본 전송을 수행합니다(OKRW 프리컴파일의 표준 ERC-20 스타일).
- Hardhat / Foundry로 Solidity 컨트랙트를 배포합니다.
- mock KYC 서비스를 통한 KYC attestation 흐름을 실행합니다.
- PCL 두 경로를 실습합니다 — 무제한 전송용 Open Path, 그리고 PCL이 실행 전 정책을 평가하는 Regulated Path(
runOnPclopt-in). - Agent 프리컴파일(ERC-8004 IdentityRegistry preinstall)을 통해 에이전트 신원을 조회합니다.