The Problem
Public figures contradict themselves constantly: politicians make promises they later reverse, journalists publish claims that conflict with their earlier reporting, institutions issue statements that contradict their own records. These contradictions are often noticed, but rarely documented in a way that is persistent, linkable, or visible to the next reader of the same article.
A tweet calling out a contradiction disappears in the feed. A fact-check on a separate website requires the reader to already know it exists. The original source (the article, the quote, the statement) sits unchanged, with no trace of the contradiction embedded in it.
How It Works
1. Install the extension
Download the extension and load it into Chrome. It activates on every webpage, no configuration required.
2. Select text on any news page
Highlight a word, phrase, or sentence: a politician's claim, a statistic, a promise. A COMMENT button appears on the page.
3. Attach a comment
Click COMMENT and type your annotation: a link to contradicting evidence, a prior statement, a correction, or context the article omits.
4. It's visible to everyone
The annotation is saved to a shared database. Any other visitor with the extension who loads the same URL sees the text highlighted in orange. Clicking it shows your comment. The original article now carries the record.
Architecture
Technical designHighlights are anchored by their exact text plus ~60 characters of surrounding context, rather than by brittle DOM positions, so annotations survive page edits, ads, and layout changes, and reconstruct reliably for every visitor.
The backend is a Node.js/Express API backed by MongoDB Atlas, deployed on Google App Engine. It is open: anyone with the extension can read and write annotations on any page. When a new quote is saved, a bot compares it against prior statements from the same domain using Claude and posts an automatic comment when it detects a contradiction.
Stack: Chrome Extension (Manifest V3) · Vanilla JS · Android (Kotlin + WebView) · Node.js · Express · Mongoose · MongoDB Atlas · Google App Engine · Claude API
The Idea
"Accountability needs infrastructure, not just the claim that a politician contradicted themselves, but a persistent, linkable annotation anyone can see on the original source."
The Social Evidence started as a website for cataloguing inconsistencies between what public figures say and what the evidence shows. It converged into a browser extension because the most useful place to surface a contradiction is on the original text, not on a separate fact-checking site the reader will never find.
The design is deliberately minimal: no accounts, no voting, no algorithmic ranking. Just annotations on URLs, visible to everyone who looks.
Try It
The extension is not yet on the Chrome Web Store. To install it:
- Download the extension (.zip) and unzip it; you'll get an
extension/folder - Open Chrome and go to
chrome://extensions - Enable Developer mode (top-right toggle)
- Click Load unpacked and select the unzipped
extension/folder - Visit any news page, select text and click COMMENT
Prefer the source? It's also on GitHub.
Android App
In developmentThe Social Evidence is also available as an Android app: a lightweight browser that injects the same annotation layer into every page you visit. Highlights and comments are shared with extension users through the same backend, and you can share an article from your regular browser straight to the app to see its annotations.
The app is not yet on the Play Store. The full source code is on
GitHub;
open the android-app/
folder in Android Studio to build and run it. A downloadable APK is coming soon.