The Market Witness
Team: joestar_san
Submitted: March 19 2026
Answer Capsule
The Market Witness transforms Pyth oracle data into courtroom evidence. Users input a real trade and watch a pixel-art trial unfold where AI-powered prosecution and defense argue using live Pyth Price Feeds data (price, confidence intervals, EMA, EMA confidence) and Pyth Pro Benchmarks (historical OHLC, volatility). Each data point becomes a dramatic round of evidence, turning raw oracle feeds into an interactive experience.
What It Does
Ever made a trade and wondered if it was actually good or just lucky? The Market Witness puts your trades on trial in a pixel-art courtroom. You enter a real trade (any of 500+ assets), and three original characters - Chop The Shark (prosecutor), Planck (defense attorney), and Judge PIRB - battle it out using real Pyth oracle data as evidence. AI generates unique dialogue for every trial, and the verdict is based on actual market conditions at the time of your trade.
Pyth Features Used
- Price Feeds (off-chain via Hermes API)
- `price` - entry/exit price comparison and P&L calculation
- `conf` - confidence interval width as market uncertainty evidence
- `ema_price` - trend analysis via EMA divergence from spot
- `ema_conf` - market stability assessment via EMA confidence ratio
- Historical lookups at both trade open and close timestamps
- Pyth Pro / Benchmarks API
- Historical OHLC data (5-min candles) in 2-hour window around trade
- Period volatility calculation as courtroom evidence
- Pre-trade momentum analysis (1hr trend before entry)
Each Pyth data point is used as a distinct piece of courtroom evidence, not just displayed as a number. The prosecution uses weak data points against the trader, while the defense uses strong data points to justify the trade.
## Links
- Live Demo: https://market-witness.vercel.app
- Source Code: GitHub - Joestarsan/market-witness: the market trial powered by pyth · GitHub
Screenshots
Landing Page - Trade Input
Trial in Progress - Prosecution vs Defense
Dramatic Callout Animation
Verdict Screen
Evidence Review - Pyth Data Cards
Tech Stack
- Framework: Next.js 14 (App Router, TypeScript)
- Styling: Tailwind CSS v4
- Animations: Framer Motion + CSS Keyframes
- Sound Effects: Web Audio API (synthesized, no external files)
- AI Dialogue: OpenRouter API (server-side, key protected)
- Oracle Data: Pyth Hermes REST API + Pyth Pro Benchmarks API
- Character Art: AI-generated pixel art (GPT-5 Image via OpenRouter)
- Deployment: Vercel
How It Works (Technical)
1. User selects any asset from 500+ Pyth price feeds and enters trade dates
2. App fetches historical price data from Pyth Hermes API (open + close timestamps)
3. In parallel, Pyth Pro Benchmarks API provides OHLC context (via server-side API route)
4. 5 distinct Pyth data points are collected as “evidence”: price, confidence, EMA price, EMA confidence, and Benchmarks volatility
5. AI (via server-side API route) generates unique prosecution/defense dialogue based on the real data
6. Interactive trial plays out with pixel-art characters, sound effects, and animations
7. Verdict is calculated from actual data quality, not random
All API keys are protected server-side via Next.js API routes. The app includes a mock trial fallback if AI is unavailable, ensuring it always works.
Content Contributions
- Public Post: will be updateed
- Technical Contribution: will be updateed
- Bonus - X Platform Post: https://x.com/Joestar_sann/status/2034656358730011085
Licensing
Licensed under Apache 2.0: market-witness/LICENSE at main · Joestarsan/market-witness · GitHub
-–
Eligibility Confirmation
- [x] 18+ years old
- [x] Not in OFAC-sanctioned jurisdiction
- [x] Original work created during hackathon
- [x] Agree to Terms & Conditions




