Inspiration
Debates move quickly, making it difficult to track claims, rebuttals, contradictions, and unanswered questions in real time. We wanted to build a quiet, glanceable companion that helps viewers understand the argument without interrupting the debate.
## What it does
CounterNotch analyzes debate transcripts and surfaces timestamped insights in the Mac notch. It identifies patterns such as unsupported claims, evasions, contradictions, topic shifts, and missing premises, then displays concise explanation cards while the video plays.
## How we built it
CounterNotch combines:
- A native Swift macOS notch interface
- A Chrome extension that observes YouTube playback
- A Node.js analysis API
- yt-dlp for reliable caption retrieval
- Gemini for structured debate analysis
- Shared transcript and insight contracts between the components
## Challenges we ran into
YouTube captions are inconsistent and often unavailable or unreadable. Automatic captions also provide no reliable speaker identity, which makes speaker-dependent analysis difficult. We also had to coordinate timing between browser playback, transcript segments, backend analysis, and the notch UI.
## Accomplishments that we're proud of
We built a working end-to-end MVP that:
- Retrieves and analyzes real YouTube debates
- Produces structured, timestamped insights
- Displays insights directly in the Mac notch
- Handles caption fallbacks with yt-dlp
- Expands the interface to accommodate multiple insight cards
- Uses conservative analysis rules to avoid inventing claims
## What we learned
Reliable AI analysis depends heavily on input quality and context. Prompt design, schema validation, transcript normalization, timing, and graceful fallbacks matter just as much as the model itself. We also learned that captions alone are insufficient for dependable speaker attribution.
## What's next for CounterNotch
Next, we plan to add audio-based speaker diarization, improve transcript quality, support more debate formats and video platforms, add user-configurable insight types, and make the analysis faster and more personalized.
Built With
- chrome
- google-gemini-api
- javascript
- node.js
- swift
- swiftui
- xcode
Log in or sign up for Devpost to join the conversation.