Observed since 21 Oct, 09:08 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
@0xmonaco/contracts
Smart contract ABIs and addresses for the Monaco protocol. This package provides the interface definitions and deployed addresses for all Monaco protocol contracts.
Smart contract ABIs and addresses for the Monaco protocol. This package provides the interface definitions and deployed addresses for all Monaco protocol contracts.
Note: This package currently only contains the Vault contract. Additional contracts will be added as they are deployed.
npm install @0xmonaco/contracts
Note: This package is typically installed as a dependency of @0xmonaco/core or @0xmonaco/types, but you can install it directly if you only need contract ABIs and addresses.
Access contract addresses and ABIs for different networks:
import { CONTRACT_ADDRESSES, CONTRACT_ABIS } from "@0xmonaco/contracts";
// Get contract addresses for Atlantic-2 testnet (chain ID 1328)
const atlanticAddresses = CONTRACT_ADDRESSES[1328];
const { vault: vaultAddress } = atlanticAddresses;
// Get contract addresses for Pacific-1 mainnet (chain ID 1329) - Coming Soon
// const pacificAddresses = CONTRACT_ADDRESSES[1329];
// Create contract instances using viem
import { createPublicClient, http } from "viem";
const client = createPublicClient({
chain: {
id: 1328, // Atlantic-2 testnet
name: "atlantic-2",
rpcUrls: {
default: { http: ["https://evm-rpc.testnet.sei.io"] },
public: { http: ["https://evm-rpc.testnet.sei.io"] },
},
},
transport: http(),
});
// Example of creating a contract instance
const vaultContract = {
address: vaultAddress,
abi: CONTRACT_ABIS.vault,
client,
};
Note: Additional contracts (CLOB, Order Book, State, Symphony Adapter) will be documented as they are deployed and integrated.
The package currently supports the following networks:
Atlantic-2 (Testnet)
Pacific-1 (Mainnet)
Each network has the following contracts deployed:
interface ContractAddresses {
/** Vault contract for managing user balances */
vault: string;
}
The package provides token configurations for different networks:
import { TESTNET_TOKENS } from "@0xmonaco/contracts";
// Access testnet tokens
const mockUSDC = TESTNET_TOKENS.MockUSDC;
const mockMTK = TESTNET_TOKENS.MockMTK;
// Use token information
console.log(`MockUSDC address: ${mockUSDC.address}`);
console.log(`MockUSDC decimals: ${mockUSDC.decimals}`);
0x6A86dA986797D59A839D136dB490292Cd560C131 (6 decimals)0x428F82f1ECa4AA6f6c75D77cBd2a9ceB94cde343 (18 decimals)The package exports a consolidated CONTRACT_ABIS object:
import { CONTRACT_ABIS } from "@0xmonaco/contracts";
const clobAbi = CONTRACT_ABIS.clob;
const vaultAbi = CONTRACT_ABIS.vault;
Available ABIs in CONTRACT_ABIS:
vault: Vault contract interfacesrc/abis/ for the contract ABIsrc/abis/index.tsCONTRACT_ADDRESSES in src/index.tsWhen deploying new contracts:
src/index.tsDownload counts and popularity will appear here as the collector receives them.
| Package / target | Requirement | Relationship |
|---|---|---|
typescriptEnvironment{
"local_name": "typescript",
"alias": false,
"peer_metadata": null
} | ^5.9.2 | development |
Source distribution
{
"shasum": "886c3c8c0ccf579c2a1f1e8cbc5f868124f59344",
"tarball": "https://registry.npmjs.org/@0xmonaco/contracts/-/contracts-0.4.1.tgz",
"fileCount": 14,
"integrity": "sha512-fsjY7PJ09OoQIRpMi3G0TlcMaxe7hr+oBzhRXnvlqOqEvCL3Z8gG9Lki+xbbZH37brmvQUy7hBQoFcbiYB8OxQ==",
"signatures": [
{
"sig": "MEYCIQDUiBxnAyQQxzQ7J8FIgKnpDiyb9gKkWgXjI9KtaGF7tAIhAI7V6l97+TqDFUi8OESgyMURNQJXUqj1J2GSe2CEl2bs",
"keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"
}
],
"unpackedSize": 86662
}Shared repository data · GitHub
Observed since 21 Oct, 09:08 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package_version:fba78a4e4e64cc7cbfa2493aa72401bf01ddadf9b03cdbeebdc044eae7d04731