A powerful Chrome extension that analyzes your resume against job descriptions to help you optimize your applications and improve your job search success rate.
- PDF Resume Upload: Upload your resume in PDF format for analysis
- Smart Job Description Extraction: Automatically extracts job descriptions from popular job boards (LinkedIn, Indeed, Glassdoor, etc.)
- Intelligent Matching Algorithm: Uses keyword analysis and text similarity to calculate match scores
- Visual Match Score: Displays your compatibility percentage with an attractive circular progress indicator
- Keyword Highlighting: Highlights matching keywords directly on job posting pages
- Cross-Browser Compatibility: Built with WebExtensions API for compatibility with Chrome, Firefox, and Edge
- Privacy-First: All processing happens locally in your browser - your resume data never leaves your device
- Download or clone this repository
- Open Chrome and navigate to
chrome://extensions/ - Enable "Developer mode" in the top right corner
- Click "Load unpacked" and select the
resume-matcher-extensionfolder - The extension icon should appear in your Chrome toolbar
The extension will be available on the Chrome Web Store once it's published.
- Click the Resume Matcher extension icon in your Chrome toolbar
- Click "Drop your PDF resume here or browse files"
- Select your PDF resume file (max 10MB)
- Wait for the processing to complete
- Navigate to any job posting page (LinkedIn, Indeed, Glassdoor, etc.)
- Click the Resume Matcher extension icon
- Click "Analyze Current Page"
- View your match score and matched keywords
- After analyzing a job posting, click "Highlight on Page"
- Matching keywords will be highlighted in yellow on the job description
- Use "Clear Highlights" to remove the highlighting
The extension works on most job posting websites, with optimized support for:
- LinkedIn Jobs
- Indeed
- Glassdoor
- AngelList/Wellfound
- Company career pages
- Most other job boards
- Manifest V3: Uses the latest Chrome extension architecture for better security and performance
- Service Worker: Event-driven background script for efficient resource usage
- Content Scripts: Inject functionality into job posting pages
- PDF.js Integration: Client-side PDF text extraction for privacy
- Local Storage: Resume data stored securely in your browser
The extension uses a sophisticated matching algorithm that combines:
- Keyword Matching: Identifies common keywords between your resume and job descriptions
- Text Similarity: Uses Jaccard similarity to measure overall text compatibility
- Weighted Scoring: Combines both metrics with configurable weights (70% keywords, 30% similarity)
- Local Processing: All resume analysis happens in your browser
- No Data Transmission: Your resume content never leaves your device
- Secure Storage: Uses Chrome's secure storage APIs
- Minimal Permissions: Only requests necessary permissions (activeTab, storage)
resume-matcher-extension/
├── manifest.json # Extension configuration
├── src/
│ ├── popup.html # Extension popup interface
│ ├── popup.css # Popup styling
│ ├── popup.js # Popup functionality
│ ├── background.js # Service worker
│ ├── content.js # Content script for job pages
│ ├── pdf-processor.js # PDF text extraction
│ └── error-handler.js # Error handling utilities
├── assets/
│ ├── icon16.png # Extension icons
│ ├── icon32.png
│ ├── icon48.png
│ └── icon128.png
├── lib/
│ ├── pdf.min.js # PDF.js library
│ └── pdf.worker.min.js # PDF.js web worker
└── README.md
- Chrome: Fully supported (Manifest V3)
- Firefox: Compatible with WebExtensions API
- Edge: Compatible with Chromium-based Edge
- Safari: Requires adaptation for Safari Web Extensions
- Chrome browser with Developer mode enabled
- Basic knowledge of HTML, CSS, and JavaScript
-
Clone the repository:
git clone <repository-url> cd resume-matcher-extension
-
Load the extension in Chrome:
- Open
chrome://extensions/ - Enable Developer mode
- Click "Load unpacked" and select the project folder
- Open
-
Make changes to the code and reload the extension to test
- Test on various job posting websites
- Try different PDF resume formats
- Verify error handling with invalid files
- Test cross-browser compatibility
Extension not working on a job page:
- Make sure you're on a job posting page with visible job description
- Try refreshing the page and analyzing again
- Check that the extension has permission to access the current site
PDF upload fails:
- Ensure the file is a valid PDF (not a scanned image)
- Check that the file size is under 10MB
- Try saving your resume as a new PDF file
Low match scores:
- Review the matched keywords to understand the analysis
- Consider updating your resume to include more relevant keywords
- Remember that the algorithm focuses on keyword matching
Extension popup not opening:
- Check that the extension is enabled in Chrome settings
- Try disabling other extensions temporarily
- Restart Chrome and try again
The extension provides detailed error messages to help diagnose issues:
- PDF Processing Error: Issues with reading your resume file
- Job Description Not Found: Unable to extract job description from the current page
- Storage Error: Problems saving your resume data
- Permission Error: Extension lacks necessary permissions
We welcome contributions! Please feel free to submit issues, feature requests, or pull requests.
- Follow existing code style and structure
- Test thoroughly on multiple job boards
- Ensure cross-browser compatibility
- Update documentation for new features
This extension is designed with privacy as a top priority:
- Your resume data is processed entirely within your browser
- No personal information is transmitted to external servers
- Resume text is stored locally using Chrome's secure storage APIs
- No analytics or tracking is performed
This project is licensed under the MIT License - see the LICENSE file for details.
If you encounter any issues or have questions:
- Check the troubleshooting section above
- Review existing issues on GitHub
- Create a new issue with detailed information about the problem
- Initial release
- PDF resume upload and text extraction
- Job description analysis and matching
- Keyword highlighting functionality
- Support for major job boards
- Cross-browser compatibility
Made with ❤️ for job seekers everywhere!