Inspiration — (April 2025)
Modern news ecosystems behave like computational systems with hidden state. Articles are emitted as tokens, platforms act as transition functions, and public attention decays over time. Most readers only ever observe a single execution path.
We built Unravel to expose the computation.
What it does
Unravel is a browser extension that models news coverage as a token-driven state transition system inspired by Turing machine abstraction.
When a user opens an article, Unravel:
- Treats the article as an input token
- Expands the tape with semantically related tokens from other publishers
- Computes per-source sentiment as state annotations
- Advances the machine over discrete time steps
- Emits coverage density and sentiment trajectories as output
The result is a live view of how narratives transition, diverge, and halt across media systems.
How it works (System View)
- Input tape: article text + metadata
- Alphabet: topic embeddings, publisher IDs, timestamps
- States: publishers × sentiment bins
- Transition function: topic similarity + temporal proximity
- Memory: time-bucketed article counts and sentiment vectors
- Output: sentiment distributions and coverage-over-time graphs
Social platforms (Bluesky) are treated as parallel tapes emitting volatility signals.
Architecture
Frontend
- Chrome extension with content scripts, popup UI, and background worker
- CSP-safe rendering of state outputs
- Real-time updates on token ingestion
Backend
- FastAPI services for token expansion and state updates
- HuggingFace transformers for sentiment and zero-shot classification
- NewsAPI for cross-source token retrieval
- Bluesky API for decentralized signal input
Visualization
- Chart.js renders the machine’s execution trace over time
Challenges
- Chrome CSP constraints on dynamic libraries
- Synchronizing multiple execution paths (content → background → popup)
- Handling temporal misalignment in social tokens
- Managing rate limits in decentralized APIs
Accomplishments
- Built a working token-level narrative machine end to end
- Modeled sentiment as state, not output
- Visualized narrative decay and amplification over time
- Integrated centralized media and decentralized social signals
- Designed a reusable computation core beyond news
What we learned
- Token pipelines outperform single-pass inference for narrative analysis
- Temporal structure matters more than aggregate sentiment
- Media systems are easier to reason about when treated as machines
What’s next
- Correct and harden temporal alignment across all tapes
- Add historical state baselines per publisher
- Introduce interpretability on state transitions
- Extend the machine to Reddit, X, and financial news
- Release a public API for narrative computation
Built With
- chartjs
- chrome
- fastapi
- hugging-face-transformers
- javascript
- newsapi
- python
- service-worker
- zero-shot-classification

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