@roninbuilders/contracts v0.6.1-alpha
Ronin Network Contracts
Contract ABIs for the Ronin Network.
Installation
npm install @roninnetwork/contracts
# or
pnpm add @roninnetwork/contracts
# or
bun add @roninnetwork/contractsUsage
There are two ways to import contracts:
Import contracts individually (Recommended):
This is the recommended approach as it minimizes the bundle size for your application.
import MY_CONTRACT from '@roninbuilders/contracts/my_contract'; // Updated path
// or for CommonJS
const MY_CONTRACT = require('@roninbuilders/contracts/my_contract'); // Updated pathImport all contracts (Larger bundle size):
import { AXIE_PROXY, KATANA_ROUTER } from '@roninbuilders/contracts'Contract Structure
Each contract export includes:
- Contract ABI
 - Contract address
 - Metadata (name, deprecation status, creation date)
 
Example:
import AXIE_PROXY from '@roninbuilders/contracts/axie_proxy' // Updated path
console.log(AXIE_PROXY.address) // Contract address
console.log(AXIE_PROXY.abi) // Contract ABI
console.log(AXIE_PROXY.proxy_abi) // Proxy ABI
console.log(AXIE_PROXY.is_deprecated) // Deprecation statusViem Example
Using viem to interact with contracts:
import { createPublicClient, http } from 'viem'
import AXIE_PROXY from '@roninbuilders/contracts/axie_proxy' // Updated path
import WRAPPED_ETHER from '@roninbuilders/contracts/wrapped_ether' // Updated path
const client = createPublicClient({
  chain: {
    id: 2020,
    name: 'Ronin',
    network: 'ronin',
    nativeCurrency: {
      decimals: 18,
      name: 'Ronin',
      symbol: 'RON'
    },
    rpcUrls: {
      default: { http: ['https://api.roninchain.com/rpc'] }
    }
  },
  transport: http()
})
// Read contract data
const balance = await client.readContract({
  address: WRAPPED_ETHER.address,
  abi: WRAPPED_ETHER.abi,
  functionName: 'balanceOf',
  args: [address]
})Ethers Example
Using ethers.js to interact with contracts:
import { ethers } from 'ethers'
import AXIE_PROXY from '@roninbuilders/contracts/axie_proxy' // Updated path
import WRAPPED_ETHER from '@roninbuilders/contracts/wrapped_ether' // Updated path
const provider = new ethers.JsonRpcProvider('https://api.roninchain.com/rpc')
// Create contract instance
const contract = new ethers.Contract(
  WRAPPED_ETHER.address,
  WRAPPED_ETHER.abi,
  provider
)
// Read contract data
const balance = await contract.balanceOf(address)Development
Update contracts from Ronin Explorer:
bun run updateBuild the package:
bun run buildFormat code:
bun run formatContributing
See CONTRIBUTING.md for contribution guidelines.
11 months ago
12 months ago
7 months ago
8 months ago
7 months ago
8 months ago
11 months ago
9 months ago
10 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago