AuthriX / extension /README.md
Deepfake Authenticator
Initial Authrix deployment
3337c5d
# Authrix Browser Extension
Detect deepfake videos on any webpage β€” no download required.
## Install (Chrome / Edge / Brave)
1. Open `chrome://extensions`
2. Enable **Developer Mode** (top-right toggle)
3. Click **Load unpacked**
4. Select this `extension/` folder
5. The Authrix icon appears in your toolbar
## Requirements
The Authrix backend must be running locally:
```bash
cd backend
python -m uvicorn main:app --host 0.0.0.0 --port 8000
```
## Usage
### Method 1 β€” Toolbar popup (recommended)
Click the Authrix icon β†’ **Capture & Analyze Video**
Records 12 seconds of the currently playing video, sends it to the local AI, and shows the verdict as an overlay on the page.
### Method 2 β€” Paste a URL
Click the Authrix icon β†’ paste a direct video URL β†’ **Analyze**
Works with direct `.mp4` / `.webm` links. For YouTube, Twitter, TikTok etc., `yt-dlp` must be installed on the backend (`pip install yt-dlp`).
### Method 3 β€” Right-click menu
- Right-click anywhere on a page β†’ **πŸ” Analyze with Authrix** (captures tab stream)
- Right-click a video link β†’ **πŸ”— Analyze video URL with Authrix**
## Architecture (MV3)
```
popup.js
└─ sends START_CAPTURE / ANALYZE_URL β†’ background.js
background.js
β”œβ”€ tabCapture.getMediaStreamId() (stream ID for the tab)
β”œβ”€ creates offscreen document
└─ sends RECORD_OFFSCREEN β†’ offscreen.js
offscreen.js
β”œβ”€ getUserMedia({ chromeMediaSource: 'tab' })
β”œβ”€ MediaRecorder records for 12s
└─ sends BLOB_READY β†’ background.js
background.js
β”œβ”€ POST /analyze (blob) or POST /analyze-url (URL)
└─ sends ANALYSIS_RESULT β†’ content.js
content.js
└─ renders overlay with verdict, confidence, details
```
## Limitations
- **DRM-protected content** (Netflix, Disney+, Prime) cannot be captured
- **YouTube** tab capture works; URL analysis requires `yt-dlp` on the backend
- Backend must be running on `localhost:8000`
- Videos > 100 MB may time out