Integration Guides

Using @maroo-chain/contracts in Your Project

Install the @maroo-chain/contracts npm package, import the Solidity precompile interfaces, and consume the pre-generated TypeScript ABIs from ethers or viem.

Understanding Maroo Address Formats

Maroo accounts have two equivalent string representations — EVM hex (0x…) and Bech32 (maroo1…). When each one matters, and how to convert between them in JS/TS.

Handling OKRW Precompile Errors

Decode every revert path from the OKRW precompile — the module-owned UnauthorizedMinter, the shared InvalidAddress / InvalidAmount errors inherited from IPrecompile (now with string payloads), and the plain-string reverts for nil / negative amounts.

Querying EAS Data

How to read attestations from Maroo's EAS — via Solidity contract calls (the canonical surface), via the EAS Indexer for reverse lookups, and via the JS/TS SDKs.

How to Simulate Compliance Checks Before Sending

A focused guide on statically simulating a call to a PCL-wrapped proxy so PCL evaluates every applicable policy before the user signs, improving dApp user experience and preventing wasted gas.

Building a Compliant ERC20 Token with PCL — End-to-End

An end-to-end walk-through: issue a KYC attestation via EAS, deploy a stock ERC20 behind a PCL-wrapped proxy, attach a ContractPolicyConfig that requires the attestation, then verify rejections.

Verifying Identity with EAS on Maroo

A complete walkthrough of registering a schema, issuing an attestation, and verifying it via standard EVM JSON-RPC.

ESC
Type to search