Quick Start
Your launch playbook. Create a venue onchain, deploy the white-label app, and open your first market — typically under 30 minutes.
Launching Your Venue
This is the full operator playbook. By the end you'll have a live, branded prediction market running on your venue, accepting trades, earning the venue fee, and ready to resolve through UMA or Pyth depending on the markets you create.
You can run this whole playbook on Base Sepolia first to test end-to-end before flipping a single env var to point at Base mainnet. The OddMaki App, SDK, subgraph, and Venue Starter all support both networks.
| Step | What You Do | Time |
|---|---|---|
| 1. Create a Venue | Create your venue from the OddMaki App with your fees, access rules, and oracle params | ~5 min |
| 2. Deploy the App | Fork the Venue Starter, set env vars, brand it, and deploy | ~10 min |
| 3. Create Your First Market | Launch a binary, grouped, or Pyth price market from the OddMaki App | ~5 min |
Prerequisites
Before you start, you'll need:
- A wallet with ETH on your target chain — for gas on venue creation, app transactions, and (if you're running a matching bot) matching. Testing on Sepolia? Grab free testnet ETH from the Base faucets.
- Node.js 20+ and pnpm — for running the Venue Starter locally
- A hosting platform — Vercel, Netlify, or any provider that supports Next.js 15
- (Optional) A Privy app ID or WalletConnect Project ID — depending on which auth provider you pick
- (Optional) USDC — only needed if your venue charges a
marketCreationFee(it defaults to 0) or if you want to place real trades. On Sepolia, mint test USDC from the Circle USDC faucet.
The Role of the Operator
As a venue operator you control:
- Fee structure — venue fee (1–200 bps), creator share, and fee recipient address
- Access control — who can trade, who can create markets (venue-level and per-market)
- Oracle parameters — UMA bond, reward, and liveness for discretionary markets
- Market curation — you can also require a specific market creator AC or pause individual markets
- Branding — logo, colors, name, domain, and enabled features
Everything else — the orderbook, matching engine, settlement, Pyth resolution, and CTF redemption — runs permissionlessly onchain. There's no backend to operate.
For day-to-day venue management we recommend the OddMaki App over the SDK or direct contract calls — it's the maintained, guided surface and stays ahead of the alternatives.
End State
After these 3 steps you'll have:
- A live prediction market platform on your own domain, branded as your project
- Your own fee structure earning the venue fee on every trade
- Your first market — binary (UMA) or price (Pyth) — open and accepting orders
- A frontend that talks directly to Base and the OddMaki subgraph — no backend, no matching infrastructure to run
When you're done here, head into Operations for day-to-day flows (creating more markets, resolving, collecting fees, pausing), or Configuration if you want to tune fees, access control, or oracle params.
Start with creating your venue →
Introduction
OddMaki is permissionless prediction market infrastructure on Base and Base Sepolia. If you want to run your own prediction market, this is the documentation for you.
Create a Venue
Create your venue onchain from the OddMaki App — a guided wizard for your fee structure, oracle settings, and access control configuration.