Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

blr

A Chrome extension that detects and blurs obnoxious LinkedIn posts using on-device AI — those boastful job announcements, humble brags, and buzzword-heavy thought leadership posts cluttering your feed.

How It Works

Uses on-device AI powered by Transformers.js to classify LinkedIn posts in real-time. Zero-shot classification determines if a post is brag-worthy and blurs it with a clean overlay. No post content or personal data ever leaves your browser — the only network request the extension makes is a one-time download of the open-source model weights from Hugging Face.

Features

  • Smart Detection — Catches new job announcements, internship flexes, humble brags, AI buzzword posts, career milestone celebrations, and more
  • Adjustable Sensitivity — Slider from "Chill" (only obvious brags) to "Aggressive" (catches borderline posts)
  • Blur Score Badge — Optional color-coded badge showing the blur score (0–100) on each post
  • Instant Toggle — Enable/disable blurring without reloading the page
  • Hover to Reveal — Blurred posts unblur with a snappy animation on hover
  • Privacy First — All inference runs locally in your browser

Project Structure

blr/
├── manifest.json             # Chrome extension manifest (MV3)
├── lib/
│   ├── transformers.min.js   # Bundled Transformers.js library
│   ├── ort-wasm-simd.wasm    # Bundled ONNX runtime (SIMD)
│   └── ort-wasm.wasm         # Bundled ONNX runtime (fallback)
├── src/
│   ├── background/
│   │   └── background.js     # Service worker — offscreen document management
│   ├── content/
│   │   ├── content.js        # LinkedIn feed scanner, blur + score badge
│   │   └── content.css       # Blur overlay styles and animations
│   ├── offscreen/
│   │   ├── offscreen.html    # Offscreen document entry point
│   │   ├── offscreen.js      # Proxy between chrome messaging and the worker
│   │   └── worker.js         # ML inference engine in a Web Worker
│   └── popup/
│       ├── popup.html        # Extension popup UI
│       └── popup.js          # Popup logic (settings, status polling)
├── assets/
│   ├── icon.png              # Source icon (128×128)
│   ├── logo-popup.png        # Popup header logo
│   ├── logo-black.svg        # Vector logo (light backgrounds)
│   ├── logo-white.svg        # Vector logo (dark backgrounds)
│   └── icons/
│       ├── icon16.png
│       ├── icon48.png
│       └── icon128.png
├── README.md
├── PRIVACY_POLICY.md
├── LICENSE
└── .gitignore

Installation (Development)

  1. Clone this repository
  2. Open chrome://extensions in Chrome
  3. Enable Developer Mode (toggle in top-right)
  4. Click Load unpacked and select the project folder
  5. Navigate to LinkedIn — the model will load automatically (~10–15 seconds on first run, cached after)

Usage

  • Popup — Click the extension icon to see model status, adjust sensitivity, or toggle features
  • Sensitivity — Drag the slider to control how aggressively posts are flagged
  • Blur Scores — Toggle score badges to see the raw blur score (0–100) on each post
  • Hover — Hover over any blurred post to reveal its content

Tech Stack

  • Chrome Extension Manifest V3 with Offscreen Document API
  • Transformers.js v2.17.1 (Xenova/mobilebert-uncased-mnli model)
  • Zero-shot Classification with 20 candidate labels (10 blur-worthy, 10 normal)

Authors

Created by Kush Mathur and Eddie Macgill.

License

MIT License, Copyright (c) 2026 Kush Mathur and Eddie Macgill — see LICENSE for details.

About

A Chrome extension to filter and blur triggering content on LinkedIn.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages