Problem
Communities are shaped by the information they consume together. News doesn't just influence individual readers, it affects public trust and the way communities interpret important events. In the current media landscape, many articles are optimised for emotional engagement through outrage, fear, urgency, and sensationalism.
We built Percepta because we wanted to make that hidden layer of influence visible. For us, Code for Community meant building a tool that protects the shared information communities depend on. Instead of only asking what is this article saying, we asked; how is this article trying to shape our perceptions?
What it does
Percepta is a browser extension that analyzes online news articles and detects patterns of emotional manipulation such as ragebait, sensationalism, bias, and engineered outrage.
How we built it
Percepta follows a structured browser-to-backend workflow:
- The user opens a webpage.
- Percepta detects whether the page contains a supported article.
- The extension extracts article text directly from the HTML.
- hat text is passed through a text-to-speech stage.
- The generated audio stream is sent into Meta TRIBE v2.
- TRIBE v2 returns a predicted neural response profile.
- We then synthesize and interpret that data using an LLM layer powered by the Gemini API.
- The final structured analysis is returned to the browser extension sidebar.
Conceptually, we treat a page as a multimodal stimulus and estimate its likely affective and perceptual impact. TRIBE v2 provides the neural prediction layer, while Gemini translates those outputs into human-readable insight: emotional profiles, manipulation scores, and summary text.
Challenges we ran into
The biggest challenge was computational overhead. Running the pipeline end-to-end, especially text-to-speech, TRIBE v2 inference, and LLM synthesis, was much heavier than expected. We ran into memory issues, long processing times, and timeout problems between the frontend and backend.
Built With
- css
- fastapi
- geminiapi
- javascript
- llama3.2
- metatribe.v2
- nilearn
- openai.whisper
- three.js

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