Skip to content

About

⚡ Automated multi-user job application engine & directory aggregator. Resume AI matching, 7-day recency filters, employer exclusion protection, Playwright auto-apply, and Celery background workers.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

4 Commits

Folders and files

Repository files navigation

⚡ Search_Apply - Automated Startup Directory & Multi-User Job Application Platform

Search_Apply is a high-performance, multi-user AI job application engine and directory aggregator. It automatically collects technology company career portals (Y Combinator, Startupbootcamp, Banking, Insurance, Telecom, Cloud Giants), matches job openings against user resumes with 7-day recency filters, excludes current employers for safety, and auto-fills application forms via Playwright browser automation with screenshot proofs.


📸 Live Web Dashboard UI

Search_Apply Web Dashboard

🖥️ Interface Layout Breakdown

Component Description & Visual Styling
Top Navigation Header ⚡ Search_Apply IDE EDITION banner with real-time stats (Portals: 44, Openings (7d): 377, Applied: 3), Theme Switcher (🚀 Antigravity IDE, 💡 IntelliJ IDEA, ☀️ Happy Vibrant, 🌲 Nord), and User Session status (👤 Shahid Khan).
Candidate Profile Sidebar Displays Candidate Resume details (Shahid Khan, 9.0 Years), extracted Skills (Java, Spring Boot, Microservices, Kubernetes, AWS, Azure, React), File Upload button, and Current Employer Protection Badge (🛑 Wells Fargo (Excluded)).
Main Openings Grid 7-day recent postings list with real-time search, ATS detection tags (greenhouse, lever, ashby), match scores (100% Match), status badges (⚡ < 7 Days, ✅ Applied), and one-click 🚀 Auto-Apply buttons.
Action Toolbar One-click 🔄 Sync Portals & Add Companies discovery button, ⚡ Auto Apply to Recent Jobs automation button, status filter tabs (Recent Positions, Discovered, ✅ Applied Category), Time Range selector (Past 7 Days), and Page Size controls.
Full-Page Loader Modal Glassmorphic overlay blocking UI interactions during active operations with animated progress bar (0% -> 100%) and live countdown timer (⏳ 10s left).

🌟 Key Features

🏢 1. Pre-Configured Enterprise & Startup Directory Engine

  • 44+ Pre-Configured Portals: Pre-populated across Banking (Wells Fargo, JPMorgan Chase, Goldman Sachs, Morgan Stanley, Capital One, Barclays, Citigroup), Insurance (UnitedHealth, Prudential, MetLife, Progressive, Liberty Mutual), Telecom (Verizon, AT&T, T-Mobile, Cisco, Vodafone, Ericsson), and Cloud Giants (Microsoft, Salesforce, Oracle, ServiceNow, IBM, SAP).
  • Y Combinator & Startupbootcamp Directory Scrapers: Scrapes Y Combinator company directory (Algolia index integration with HTML fallback) and international portfolio accelerators.
  • 🔄 Sync Portals & Auto-Discovery Engine: One-click portal sync that automatically discovers new companies, adds them to the SQLite database, and saves them to data/companies_config.json.

🛑 2. Candidate Protection & Current Employer Exclusion Filter

  • Resume Extraction: Automatically parses candidate work experience and detects current employment (e.g. Wells Fargo).
  • SQL Query Exclusion: Automatically excludes all openings from the user's current employer (AND c.name NOT LIKE '%Wells Fargo%').
  • Privacy Safety: Ensures candidate job searches remain 100% private and protects candidates from accidentally applying to their current workplace during bulk auto-applies.

📄 3. Multi-User SaaS & Resume Parser

  • Session Authentication: Secure user registration, SHA-256 password hashing, and cookie session management.
  • PDF / DOCX Resume Upload: Parses PDF and DOCX resume files using pypdf and python-docx into structured candidate profiles (18+ technical skills, years of experience, contact details, current company).
  • AI Relevance Scoring: TF-IDF and skill overlap matcher scoring job relevance (0%–100%).

⚡ 4. 7-Day Recent Openings Filtering

  • Strict Recency Default: Dashboard displays only recent job postings (posted within the past 7 days) (created_at >= datetime('now', '-7 days')).
  • Toolbar Selector: Allows switching between Past 7 Days (Recent), Past 14 Days, Past 30 Days, and All Time.
  • Recency Badges: Each role features a vibrant ⚡ < 7 Days pill badge.

🔍 5. Multi-Dimensional Job Filtering (Location, Title, Multiple Skills)

  • Location-Wise Filter: Search openings by exact or partial location (e.g. Remote, San Francisco, New York, India).
  • Title-Wise Filter: Filter openings by role title (e.g. Senior Backend, Full Stack, Data Engineer).
  • Multiple Skills Tagging: Interactive multi-skill tag filter allowing users to add/remove skill pills (Python, React, AWS, Java, Kubernetes) with Match ALL (AND) or Match ANY (OR) matching modes.
  • Popular Skill Quick Chips: Instant click-to-add shortcuts for top tech stack skills.

⚡ 6. Celery + Redis Decoupled Background Workers

  • Asynchronous Execution: Decouples heavy Playwright browser form auto-applies and web scrapers out of app.py HTTP threads into dedicated Celery background workers (tasks.py).
  • Worker Process Launcher: Includes ./run_worker.sh to start background task workers listening to Redis queue (redis://localhost:6379/0).
  • Real-Time Task Polling: GET /api/tasks/{task_id} tracking status (PENDING, STARTED, SUCCESS).
  • Graceful Fallback: Automatically falls back to synchronous execution if Redis is inactive locally.

🎨 7. IDE Themes & Full-Page Countdown Progress Loader

  • IDE Themes: Switch between 🚀 Antigravity IDE (Dark), 💡 IntelliJ IDEA (Darcula), ☀️ Happy Vibrant, and 🌲 Nord Cyberpunk.
  • Interactive Header Theme Picker: Saves theme preferences in localStorage.
  • Full-Page Loader Overlay: Full viewport modal overlay with countdown timer (⏳ 10s left) and animated progress bar (0% -> 100%) that locks UI interactions during long-running tasks.

🛠️ Quick Start Guide

1. Prerequisites

  • Python 3.10+
  • Node.js & Playwright Chromium
  • Redis Server (Optional for background Celery worker tasks)

2. Environment Setup

# Clone the repository
git clone https://github.com/TechyShahid/Search_Apply.git
cd Search_Apply

# Create and activate virtual environment
python3 -m venv venv
source venv/bin/activate

# Install dependencies (including Celery & Redis)
pip install -r requirements.txt

# Install Playwright Chromium binaries
playwright install chromium

3. Running the App & Background Worker

Option A: Run Web Server (Single Process / Dev Mode)

./run_app.sh

Open your browser to: http://localhost:8088

Option B: Run Web Server + Celery Background Worker (Decoupled Mode)

# Terminal 1: Start Redis broker (optional)
redis-server

# Terminal 2: Start Celery background worker process
./run_worker.sh

# Terminal 3: Start FastAPI web server
./run_app.sh

💻 CLI Usage Examples

Search_Apply comes with a rich terminal CLI with multi-dimensional job filtering:

# Parse resume and print candidate profile
./venv/bin/python cli.py parse-resume Resume-Shahid-9Years.pdf

# List configured company portals
./venv/bin/python cli.py list-companies

# Add a custom company portal
./venv/bin/python cli.py add-company "Custom Tech" "https://customtech.io" "https://customtech.io/careers" --ats greenhouse

# Discover jobs across all portals
./venv/bin/python cli.py find-jobs

# List matching jobs with Location, Title, and Multi-Skill filters
./venv/bin/python cli.py list-jobs --location "Remote" --title "Engineer" --skills "Python,React"

# Auto-apply to a specific job ID
./venv/bin/python cli.py apply --job-id 1

# Run full end-to-end automated pipeline
./venv/bin/python cli.py run-all

🚀 Scaling & Production Deployment Architecture

Search_Apply is designed to scale from a single-user engine up to 1,000,000 Users:

📊 Capacity & Resource Sizing

Scale Daily Active Users Infrastructure Stack Monthly Cost Range
Starter / Dev 1 – 1,000 Single VPS / Render + SQLite / Redis Free – $25 / mo
Medium Scale 100,000 Users (~10k DAU) 2x Web Nodes (t4g.medium), 2x Celery Workers (c6g.large), RDS PostgreSQL (db.t4g.medium), Redis, S3 Storage $215 – $425 / mo
Enterprise Scale 1,000,000 Users (~100k DAU) 4-8x Web Nodes (c6i.xlarge), 8-15x Playwright Workers (c6i.2xlarge), AWS Aurora PostgreSQL, Redis Cluster, S3 + Cloudflare $1,520 – $3,250 / mo

🛠️ Process Execution Architecture

[ User Clicks "Auto-Apply" in Web UI ]
               │
               ▼
[ FastAPI Server (app.py) ] ── (Lightweight Task Message) ──► [ Redis Queue ]
               │                                                    │
(Returns HTTP 202 Instant Response)                                 │
               │                                                    ▼
               └─────────────────────────► [ Celery Worker (run_worker.sh) ]
                                                    │
                                         (Executes Playwright Browser
                                           Application in Background)

📁 Repository Architecture

Search_Apply/
├── app.py                      # FastAPI web server, REST API endpoints, and Web Dashboard
├── cli.py                      # Terminal CLI interface built with Rich graphics
├── tasks.py                    # Celery asynchronous background worker task definitions
├── config.py                   # Configuration paths & company JSON loader/saver
├── requirements.txt            # Python dependencies (FastAPI, Playwright, Celery, Redis)
├── run_app.sh                  # Executable Web App launcher script
├── run_worker.sh               # Executable Celery Background Worker launcher script
├── data/
│   ├── companies_config.json   # 44+ pre-configured company career URLs
│   ├── resume.json             # Parsed candidate profile JSON
│   ├── search_apply.db         # SQLite database (users, companies, jobs, applications)
│   └── screenshots/            # Proof screenshots of auto-filled job applications
├── demo/
│   ├── DEMO.md                 # Complete Git Demo walkthrough guide
│   └── dashboard_preview.png   # Real web application interface preview
├── engine/
│   ├── applier.py              # Playwright browser form auto-filler
│   ├── career_finder.py        # ATS detection & career page discovery
│   ├── job_matcher.py          # TF-IDF & skill relevance matcher
│   └── resume_parser.py        # PDF/DOCX/JSON resume parser with current company detection
├── scrapers/
│   ├── base_scraper.py         # Abstract base scraper class
│   ├── config_scraper.py      # ConfigDirectoryScraper for JSON portals
│   ├── startupbootcamp.py      # Startupbootcamp directory scraper
│   └── ycombinator.py          # Y Combinator directory scraper
└── storage/
    └── db.py                   # SQLite database access layer & migrations

📝 License & Author

About

⚡ Automated multi-user job application engine & directory aggregator. Resume AI matching, 7-day recency filters, employer exclusion protection, Playwright auto-apply, and Celery background workers.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages