Open Source  ·  Python  ·  Playwright

Automate Your
Job Applications

Applymatic scrapes job listings and auto-fills application forms using your saved profile — so you can apply at scale without the repetition. Currently supports LinkedIn Easy Apply, with more platforms on the way.

python playwright streamlit linkedin-automation easy-apply

Everything you need to apply faster

Built for developers who want full control over their job search automation.

🔍
Job Scraper
Search by keyword, location, distance, date posted, and Easy Apply filter. Currently targets LinkedIn — deduplicates results and saves to CSV automatically.
🤖
Auto Form Filling
Handles text inputs, dropdowns, radio buttons, and location autocomplete across multi-page Easy Apply flows.
🧠
Answer Caching
Saves your answers to application questions. Once answered, never asked again across future runs.
👤
Profile Matching
Maps your profile fields — name, salary, work authorization, years of experience per technology — directly to form inputs.
🛡️
Bot Detection Avoidance
Connect to your existing logged-in Chrome or Edge via CDP, or use session persistence so fresh logins are rare.
💻
Cross Platform
Runs on Windows, Mac, and Linux. Streamlit UI works in any browser — no CLI required after setup.

Three ways to run

01
Scrape Only
Find and save jobs to CSV without applying. Review before you commit.
02
Scrape & Apply
Search and immediately apply in a single run. Set a max application limit.
03
Apply from CSV
Apply to a previously scraped list at any time. Full control over timing.

Up and running in minutes

Requires Python 3.8+

# clone the repo
$ git clone https://github.com/APierce-Ptak/Applymatic.git && cd Applymatic
 
# create and activate a virtual environment
$ python -m venv venv && venv\Scripts\activate
 
# install dependencies
$ pip install -r requirements.txt
 
# install browser
$ playwright install chromium
 
# run
$ streamlit run app.py