Inspiration
In the pharmaceutical industry, patents dictate the market. A patent grants a temporary monopoly (typically 20 years) on a drug, but once that patent expires, competitors can swoop in to produce generic alternatives, shifting billions of dollars in market share. Additionally, patents are region-specific; if a company fails to file a patent in a certain country, that region becomes an open opportunity.
Currently, tracking this patent intelligence is reactive, fragmented, and too slow for portfolio teams making time-sensitive decisions. We wanted to build something that feels like a live radar for these pharma opportunities: a tool to identify signals early, triage them quickly, and produce decision-ready outputs for strategy, market access, and leadership teams.
What it does
Scoutent continuously scans patent signals (like upcoming expirations and non-filed region opportunities) and matches them against user-defined scout criteria. It then moves the most promising assets through an automated pipeline into comprehensive opportunity reports. We also built a live run monitor, allowing users to watch the pipeline's progress in real time without refreshing, complete with demo pacing that simulates a realistic end-to-end run for presentations.
How we built it
- Built on Next.js + Tailwind for the product UI and app shell.
- Used Supabase for auth, relational data, and report file storage.
- Orchestrated a multi-agent pipeline (ingest → matching → research → reports) with tracked run state in scout_runs.
- Added structured JSON logging across API/action/pipeline/matching layers to debug stalls and visibility gaps.
- Added a live status API + client polling panel for no-reload pipeline visibility.
Challenges we ran into
- Runs appeared “stuck” or not reflected in UI/DB due to stage behavior and status timing.
- Intermediate states were easy to miss when transitions happened faster than polling intervals.
- AI response schema inconsistency caused deep-dive parsing failures.
Accomplishments that we're proud of
- Shipped a significantly cleaner, more cohesive UI aligned to target visual direction.
- Delivered live, visual pipeline tracking that users can actually watch during runs.
- Added robust observability with structured logs that made pipeline debugging practical.
What we learned
- Product trust is as much about visible progress as backend correctness.
- Status models should be monotonic and resilient to race conditions/concurrent triggers.
- AI pipelines need strict schema normalization, timeout guardrails, and graceful fallbacks.
- UX polish and operational reliability have to be built together, not sequentially.
What's next for Scoutent
- Replace polling with SSE/WebSockets for true event-stream updates.
- Add richer run telemetry (stage durations, throughput, bottleneck alerts).
- Expand report outputs with stronger clinical/regulatory evidence grading and confidence scoring.
- Add collaboration features (annotations, approvals, audit trails for decisions).
- Harden production reliability: retries, idempotency, concurrency locks, and run deduping.
- Introduce benchmarked model quality checks for matching/research before each release.
Built With
- next
- perplexity
- react
- tailwind
Log in or sign up for Devpost to join the conversation.