Inspiration
Prediction markets like Polymarket are powerful financial instruments, but they are difficult to navigate and reason about, especially for newer traders. Hundreds of markets move simultaneously on the platform, probabilities shift in real time, and users are often left reacting to information rather than understanding how it impacts risk, payoff, and timing. This project flips the workflow from searching for markets to markets finding you, then enriches them with analytics so users can understand risk before placing a trade.
What it does
The extension continuously infers a user’s active context; what they are reading, searching, or hearing using NLP and live audio analysis. Based on that context, it shows relevant Polymarket markets and pairs them with analytical visualizations that help traders reason about outcomes, probabilities, and time.
For example, if a user searches for Texans vs. Patriots or is listening to live commentary at a game, the extension identifies the topic and recommends related markets such as season-long championship outcomes or game-specific resolution markets. Instead of just showing prices, the tool overlays:
- Probability and price evolution over time
- Scenario-based P&L views (win vs. loss, early vs. late resolution)
- Historical matchup and performance context
- Comparative payoff intuition across related markets
How we built it
Built as a Chrome MV3 extension with a background service worker, content script, and a popup UI. The content script extracts “Active context” from searches/pages and sends it to the background worker, which then queries Polymarket (Gamma + search) and ESPN, stores results, and broadcasts them to the popup. The popup renders the Polymarket market cards and the NFL insight panel, plus the Polymarket‑only analytics. For live audio, we started with a LiveKit pipeline: a browser capture page published tab audio to a LiveKit room, a Node “agent” subscribed to the audio and transcribed it, and the ws‑hub broadcast transcript packets into the extension. Later, we also added a direct offscreen tab‑capture path plus an ElevenLabs transcription agent that listens on the ws‑hub, so live audio can be transcribed without LiveKit.
A key differentiator is real-time audio understanding powered by LiveKit. Rather than relying solely on text or browsing behaviour, the system ingests live audio streams. For example, stadium commentary, watch parties, or broadcasts to extract high-signal moments (momentum shifts, injuries, tactical changes). Using LiveKit, we:
- Capture and stream live audio into a LiveKit room
- Subscribe via a Node-based agent that performs transcription and segmentation
- Broadcast structured transcript events back into the extension in real time This turns ambient audio into a live market-discovery and signal layer, allowing markets and analytics to update as the situation evolves.
Challenges we ran into
The main technical challenge was reliably capturing and processing real-time audio in a browser environment while keeping latency low and integration seamless. Designing a pipeline where LiveKit played a core analytical role, rather than acting as a simple transport layer, required careful system design and iteration.
What we're proud of
- Building our first fully multi-modal agent, integrating text, live audio, real-time market data, and analytics into a single coherent system.
- Learning and shipping with LiveKit and Polymarket from scratch, and successfully making them core parts of the product rather than add-ons.
- Taking an idea from zero to a working demo in under 30 hours, powered mostly by caffeine and stubborn optimism.
What's Next
- Expanding NexPlaybook into a native iOS app, so traders can access real-time context, live audio signals, and market insights wherever they are.
- Deepening the analytics layer with portfolio-level views, payoff curves, and scenario modelling to further support real trading decisions.
Built With
- elevenlabs
- espn-public-nfl-api
- gemini
- html
- javascript
- livekit
- node.js
- openapi
- polymarket
- polymarket-gamma-api
- python
- typescript
- whispr

Log in or sign up for Devpost to join the conversation.