GitHub - pPyrius/Filterin: Browser extension to filter on Linkedin jobs by Companies total number of employees · GitHub
/" data-turbo-transient="true" />
Skip to content
Search or jump to...
Search code, repositories, users, issues, pull requests...
-->
Search
Clear
Search syntax tips
Provide feedback
--><br>We read every piece of feedback, and take your input very seriously.
Include my email address so I can be contacted
Cancel
Submit feedback
Saved searches
Use saved searches to filter your results more quickly
-->
Name
Query
To see all available qualifiers, see our documentation.
Cancel
Create saved search
Sign in
/;ref_cta:Sign up;ref_loc:header logged out"}"<br>Sign up
Appearance settings
Resetting focus
You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
{{ message }}
pPyrius
Filterin
Public
Notifications<br>You must be signed in to change notification settings
Fork
Star
main
BranchesTags
Go to file
CodeOpen more actions menu
Folders and files<br>NameNameLast commit message<br>Last commit date<br>Latest commit
History<br>3 Commits<br>3 Commits
assets/icons
assets/icons
src
src
tests
tests
Filterin-logo.png
Filterin-logo.png
Filterin.png
Filterin.png
README.md
README.md
manifest.json
manifest.json
package.json
package.json
View all files
Repository files navigation
Filterin
Filterin is a small Chrome/Chromium Manifest V3 extension that hides LinkedIn job-list items unless the hiring company's published employee-count range matches the company-size bands you selected.
Install locally
Open chrome://extensions.
Enable Developer mode.
Click Load unpacked.
Select this folder: /path/to/filterin.
Open a LinkedIn jobs page and use the Filterin toolbar popup to choose the company-size bands you want to keep visible.
How it works
The content script scans LinkedIn job-list elements, finds the company profile link on each card, and also checks encoded LinkedIn redirect URLs that may only appear when hovering a link.
The background worker tries LinkedIn's own organization JSON endpoint first. If a job card does not expose a company link, Filterin checks the selected job details panel, then uses the visible company name with likely slug candidates and LinkedIn company search/typeahead before falling back to fetching the job page or the company's /about/ page.
It parses the "Company size" field, including common values like 1 employee, 2-10 employees, 51-200 employees, 1,001-5,000 employees, 1K-5K employees, and 10,001+ employees.
Results are cached locally for 7 days. Unknown results are cached for 6 hours to avoid repeated failed requests. Company-name lookups also cache the resolved company alias, so refreshing the page should reuse previous results instead of checking the same company again.
The popup shows LinkedIn-style company-size bands as multi-select buttons. Listings are shown only when their parsed band is selected; unknown listings follow the "Hide listings when size is unknown" checkbox.
Known-size job cards get a small circular V badge inside the job so you can see which listings Filterin verified.
Requests run quickly in normal conditions, with a short global pause between LinkedIn calls. If LinkedIn returns HTTP 429, Filterin pauses the whole queue, waits, and retries instead of continuing to send requests.
Notes
LinkedIn changes its markup often, so the selectors are intentionally broad and the parser is defensive.
If LinkedIn blocks or changes the company page response, unknown companies are hidden only when "Hide listings when size is unknown" is enabled.
The extension does not call a third-party API and does not send data outside your browser.
The cache lives in Chrome extension storage under chrome.storage.local with the key filterinCompanySizeCache. Use the popup's Show debug button to view or copy the current cache and per-job-card state.
The extension requests Chrome's cookies permission so it can read LinkedIn's JSESSIONID csrf token for same-site LinkedIn API requests.
After reloading the unpacked extension, refresh the LinkedIn jobs tab so Chrome loads a fresh content script.
Troubleshooting
If a job is not hidden, click Show debug in the popup while the LinkedIn jobs tab is active. Look for the relevant card:
state: "hidden" means Filterin decided to hide it.
state: "shown" means it parsed a company size and that size band is selected in the popup.
state: "unknown" means it could not get a usable employee count. Check reason, companyUrl, jobUrl, and the cache entry's debug.title or debug.interestingSnippet.
reason: "company_or_job_url_not_found" means LinkedIn's current card markup did not expose either URL to the content script.
reason: "company_url_not_found_on_job_page" means the fallback job-page fetch worked, but the company link was...