Prediction market arbitrage scanner with a terminal-style UI.
Real-time orderbook scanner for prediction markets. Detects arbitrage opportunities across multiple platforms.
$ scan --market polymarket --mode binary
markets: 142 opportunities: 3 updated: 17:21:37
| Platform | Chain | Type | Status |
|---|---|---|---|
| Polymarket | Polygon | CLOB | Active |
| Predict.fun | Blast | CLOB | Pending |
| Kalshi | Regulated | Exchange | Pending |
when ask(YES) + ask(NO) < 1.00 → buy both sides → guaranteed profit
when sum(YES asks) < 1.00 in mutually exclusive markets → buy all outcomes
- Framework: TanStack React Start
- Runtime: Cloudflare Workers
- Styling: Tailwind CSS 4
- Font: JetBrains Mono
- Bun (recommended) or Node.js 18+
git clone https://github.com/your-username/prediction-dashboard.git
cd prediction-dashboard
bun installbun run devbun run build
bun run deploy # deploys to Cloudflare WorkersCreate a .dev.vars file for local development:
# Predict.fun (optional)
PREDICT_FUN_API_KEY=your_api_key
# Kalshi (optional)
KALSHI_KEY_ID=your_key_id
KALSHI_PRIVATE_KEY=your_rsa_private_keysrc/
├── routes/
│ ├── __root.tsx # Root layout
│ ├── index.tsx # Home page
│ ├── polymarket.tsx # Polymarket scanner
│ ├── predictfun.tsx # Predict.fun scanner
│ └── kalshi.tsx # Kalshi scanner
├── lib/
│ ├── api/ # API integrations
│ └── types.ts # TypeScript types
└── styles/
└── app.css # Global styles
This tool is for educational and research purposes only. Displayed margins do not account for:
- Slippage
- Trading fees
- Execution risk
- Gas costs (for on-chain markets)
Always do your own research before trading.
MIT