Inspiration

Streaming platforms sit on graveyards of dead media. Titles that cost millions to produce gather dust because internal algorithms fail to surface them. The failure signal is internal (low click-through rates, low impressions), but the resurrection signal lives on the open web. We built Dead Pixel to close that gap.

What it does

Dead Pixel is an agentic catalog resurrection system. You feed it a dead title from your platform's catalog. It pulls internal telemetry (impressions, CTR, completion rate) and runs a multi-agent pipeline using Google Gemini and Parallel Web Systems. It finds the community vocabulary that fans use to discuss the film, maps the gap between the platform's metadata and the real-world search terms, and adjacent data. Finally, it outputs three concrete actions to revive the title's engagement.

How we built it

We orchestrated the pipeline using @google/adk. The Intake agent fetches TMDB metadata and computes a Dead Score. The Cultural Context agent runs a deep, asynchronous research job via Parallel's Task API to find community discussions and citations. The Search Gap and Competitive Signal agents execute multi-query searches via Parallel's Search API to map metadata gaps and market timing. Finally, the Hypothesis Engine uses Gemini 3.6 Flash to synthesize these signals into a ranked intervention brief. The entire pipeline streams to a Next.js 16 frontend via Server-Sent Events, updating the UI in real time. We styled the interface using Tailwind CSS v4, DM Sans, and Geist Mono.

Challenges we ran into

Next.js Turbopack aggressively traced dynamic imports inside @google/adk during the build process, attempting to resolve optional peer dependencies like MikroORM and Google Cloud Storage. We bypassed the resulting build crashes by explicitly adding @google/adk to serverExternalPackages in the Next.js config, forcing the compiler to ignore the dynamic requires. We also hit the Gemini 3.6 Flash free tier rate limits (5 requests per minute) when our agents fired concurrently, requiring us to serialize the ADK workflow steps to respect the quota.

Accomplishments that we're proud of

The system connects an internal failure signal to an external web signal. We successfully mapped the Parallel Task API to a Next.js streaming response, allowing users to watch the agents parse Reddit threads and Letterboxd reviews in real time before the final brief appears.

What we learned

We learned that standard React functional state updates drop intermediate Server-Sent Events if the backend emits them synchronously in the same stream chunk. We fixed the frontend parser to read raw payload events directly and queue them sequentially.

What's next for Dead Pixel

We plan to hook the Parallel Monitor API directly into the platform's Content Management System. Instead of a human reviewing the Resurrection Brief, the system will automatically update the metadata tags and promotional artwork when an adjacent title spikes in popularity.

Built With

  • google-adk
  • google-genai
  • nextjs
  • parallel-web
  • redis
  • tailwindcss
  • tmdb
  • typescript
  • upstash
  • workflow
  • zod
Share this project:

Updates

Submission history