UnCovered is a Chrome extension that verifies text, images, websites, and screenshots in real-time—right where you browse. Built on Perplexity’s Sonar API, it provides instant truth with citations, verdicts, and deep analysis using just a right-click, without breaking your browsing flow.

Features

  • 3-Click Verification: Select → Right-click → Verify (Text, Image, Link, or Screenshot)
  • Text Analysis Modes: Quick Search, Fact-Check, and Deep Research capabilities
  • Image Fact-Checking: Reverse image analysis and multimodal claim verification
  • Screenshot & Video Frame Capture: Analyze visuals like infographics, memes, or chart snapshots
  • Citation-Backed Results: All answers include sources and fact-verdicts (True/False/Unconfirmed)
  • Instant Rebuttal Generator: Create concise, fact-based replies to misinformation
  • Zero-Friction UX: Stay on the same page — no copy-paste, no new tabs required

Prerequisites

  • Chrome browser
  • Node.js 16+ and npm
  • MongoDB database
  • Cloudinary account for image storage
  • Perplexity API key (Sonar Pro and Deep Research access)
  • Google OAuth credentials

Installation

# Clone the repository
git clone https://github.com/aayushsingh7/UnCovered.git
cd UnCovered

# Install dependencies
npm install

# Build the Chrome extension
npm run build

Configuration

Set up your environment variables:
PERPLEXITY_API_KEY=your_sonar_api_key
MONGODB_URI=your_mongodb_connection_string
CLOUDINARY_URL=your_cloudinary_credentials
GOOGLE_OAUTH_CLIENT_ID=your_google_oauth_id

Usage

  1. Text/Link Verification:
    • Select text or right-click a link
    • Choose Quick Search / Fact-Check / Deep Research
    • Get trusted results with verdicts and citations
  2. Image Verification:
    • Right-click any image
    • Choose from Quick Search or Fact-Check
    • Detect misinformation and visual manipulation
  3. Screenshot/Infographic Analysis:
    • Click UnCovered icon in the toolbar
    • Use “Capture Screen” to analyze visual content
  4. Get Instant Rebuttal:
    • Auto-generate fact-based responses to correct misinformation

Code Explanation

  • Frontend: Vanilla JavaScript Chrome extension with context menu integration
  • Backend: Node.js Express server handling API requests and user authentication
  • AI Integration: Perplexity Sonar Pro and Deep Research APIs for intelligent fact-checking
  • Image Processing: Cloudinary integration for screenshot and image analysis
  • Database: MongoDB for user data and verification history
  • Authentication: Google OAuth for secure user management
  • Multimodal Analysis: Support for text, images, screenshots, and video frames

Technical Implementation

UnCovered leverages Perplexity Sonar API in three core modes:
// Quick Search and Fact-Check with Sonar Pro
const quickResponse = await perplexityClient.chat.completions.create({
  model: "sonar-pro",
  messages: [{ role: "user", content: factCheckPrompt }]
});

// Deep Research for comprehensive analysis
const deepResponse = await perplexityClient.chat.completions.create({
  model: "sonar-deep-research", 
  messages: [{ role: "user", content: deepAnalysisPrompt }]
});

Demo Video