← Protocols
Zora
NFT / Marketplace·Zora Network · Base · Ethereum · Optimism · Arbitrum · EVM

Zora

01Description

NFT mint protocol and Zora Network L2, plus the newer Coins Protocol that turns posts and creator profiles into instantly tradeable ERC-20s on Base via Uniswap V4 hooks. Two SDKs: Protocol SDK for 1155/721 mints + collects, and Coins SDK for content/creator/trend coins.

02Best for
  • 011155 open-edition mints
  • 02creator and content coins (Coins Protocol)
  • 03Uniswap V4 hook trading
  • 04low-cost mints on Zora Network and Base
  • 05premints (gasless creator setup)
03Install
  • pnpm add @zoralabs/protocol-sdk @zoralabs/coins-sdk viem
04Environment variables
VariableScopeDescription
ZORA_API_KEYServerAPI key from zora.co/settings/developer (required for Coins SDK rate limits and full features).
NEXT_PUBLIC_ZORA_CHAIN_IDClientTarget chain ID (e.g. 7777777 for Zora Network, 8453 for Base).
05Prompt snippet
For NFT mints use `@zoralabs/protocol-sdk`: instantiate `createCollectorClient({ chainId, publicClient })` and call `mint({ tokenContract, mintType: '1155', tokenId, quantityToMint, minterAccount })` to get prepared calldata, then send via viem/wagmi. For Coins, install `@zoralabs/coins-sdk`, call `setApiKey()`, then use `createCoin()` to deploy a content/creator coin and `tradeCoin()` to swap through the V4 pool. Coins Protocol runs on Base mainnet today.
06Gotchas
  • Coins Protocol launches use a custom Uniswap V4 hook with an anti-sniping fee that decays from 99% over the first 10 seconds — UIs must surface this or users will see brutal slippage.
  • Zora's Protocol Rewards split mint fees among creator, referrer, and the protocol — set `mintReferral` and `platformReferral` correctly or you forfeit the referral share.
  • Royalty enforcement on Zora 1155 is EIP-2981 only; secondary venues (OpenSea, Blur) can ignore it. Don't model creator revenue on royalty income alone.
  • The Coins SDK needs an API key (`setApiKey`) for indexed queries; without it you hit rate limits and lose explore/leaderboard endpoints.
  • Premints exist off-chain until the first collect; you cannot read them via standard ERC-1155 indexers — use the Zora API or Protocol SDK helpers.
  • Zora Network (chainId 7777777) and Base (8453) are both supported but contract addresses differ — always derive from the SDK's chain config, never hardcode.
07Alternatives