Problem
Retail investors are buried in noise. Comparing two stocks the way a portfolio manager would is slow, scattered, and intimidating.
Solution
A head-to-head AI battle interface that ranks any two tickers on fundamentals, momentum, and sentiment, then explains the verdict in plain English.
Approach
Built on Next.js App Router with Supabase as the database and AI SDK for streaming model output. Prompts are versioned and evaluated against a small golden set so model drift is caught before users see it. Latency budgets are strict — the AI verdict starts streaming under 800ms or the request fails closed. Market data and sentiment fuse on the server with cache tags so a single ticker update invalidates only the rows that need it.
Stack
Features
- Side-by-side stock battle UX
- AI-narrated verdict & rationale
- Live market data + sentiment fusion
- Discovery feed for new tickers
What landed in production
- Streaming AI verdict UX under 1s perceived latency
- Version-controlled prompts with regression checks
- Cache-tagged data layer — surgical invalidation, no over-fetch
