I built a Chrome extension that auto-labels LinkedIn connection requests based on who's sending them.
Chrome Store: https://chromewebstore.google.com/detail/Request%20Radar/pmp...
THE PROBLEM:
I receive 50+ LinkedIn requests weekly. About half are recruiters with legitimate opportunities. The other half are MLM pitches, life coaches, and "passive income" schemes.
Sorting through them manually took 20+ minutes weekly. Worse: I missed 2 recruiter messages from companies I actually wanted to work for because they were buried.
THE SOLUTION:
Request Radar scans invitation text and adds visual badges: - Green: Recruiters/talent acquisition (don't miss these) - Red: Spam (MLM, coaches, scams) - Blue: Normal professionals
TECHNICAL DETAILS:
- Vanilla JavaScript content script - MutationObserver for dynamic content - Chrome Storage API for settings persistence - Keyword-based classification (simple > complex) - Zero external API calls - entirely client-side
Performance: - 15ms average per invitation - Runs on page mutations (doesn't poll) - Lightweight: <50KB total
PRIVACY:
- No data collection whatsoever - No analytics or tracking - Settings stored locally via Chrome sync storage - Read-only - doesn't auto-accept/reject anything - Source code could be audited (considering open-sourcing)
ACCURACY:
~85% with default keywords. Users can customize to improve.
False positives: "Sales" roles sometimes flagged as spam (working on better context detection) False negatives: Generic titles like "Consultant" without other indicators
WHAT I LEARNED:
1. Chrome extensions are underrated for distribution 2. Simple keyword matching works better than I expected 3. Privacy features are a selling point 4. Users prioritize speed > accuracy (instant feedback matters)
FUTURE:
Considering: - Open-sourcing it - Analytics dashboard (local-only, shows patterns over time) - Premium tier with advanced features - Port to other platforms (Twitter DMs?)
Would love feedback on: 1. Classification accuracy improvements 2. Other platforms where this would be useful 3. Feature requests 4. Technical implementation critiques
Built this over a weekend after getting frustrated. Clearly I'm not alone - 1,000+ installs in the first week.
Happy to answer questions!