Rooster is a lightweight open-source tool that automates your job search. It scans vetted hiring platforms (Greenhouse, Lever, Workday, Comeet), scrapes structured job data, and sends new opportunities straight to your Telegram chat — twice a day.
- Google Custom Search (CSE) — Builds focused queries and searches only the job-board domains you configure.
- Scraper (BeautifulSoup) — Visits each result and extracts company, location, tech stack, and snippets.
- Telegram Bot — Bundles new roles into a digest and delivers them to you.
- Next stages — SQLite persistence for deduping, scheduled GitHub Actions runs, and an optional insights dashboard.
git clone https://github.com/<your-user>/rooster.git
cd rooster
python -m venv .venv && source .venv/bin/activate # On Windows: .venv\Scripts\activate
pip install -r requirements.txt
cp .env.example .envThen edit .env and add your credentials:
GOOGLE_API_KEY=your_google_api_key
GOOGLE_CSE_ID=your_cse_id
TELEGRAM_BOT_TOKEN=your_bot_token
TELEGRAM_CHAT_ID=your_chat_idpython -m rooster.mainRooster will:
- Query Google CSE for the latest job listings.
- Scrape each posting for structured details.
- Send a formatted summary message to your Telegram chat.
rooster/
├── main.py # Entry point — orchestrates search, scrape, notify
├── config.py # Query definitions and run schedule metadata
├── search.py # Google Custom Search integration
├── scraper.py # Extracts job details from HTML pages
├── models.py # Dataclasses for structured job results
├── notifier.py # Telegram integration
├── database.py # Placeholder for upcoming SQLite persistence
data/
.github/workflows/ # GitHub Actions (scheduled runs coming soon)
requirements.txt
.env.example
- Python 3.11+
requests,beautifulsoup4,lxmlpython-telegram-botpython-dotenv,rich- (optional) GitHub Actions for automation
- ✅ Structured job model and web scraping
- ✅ Telegram notifications
- ⏳ Duplicate detection (SQLite)
- ⏳ Automated runs via GitHub Actions
- ⏳ Insight dashboard (FastAPI + React)
Because it crows twice a day 🐓 to wake you up with fresh job opportunities.
MIT — free for personal and commercial use.
Rooster — job hunting should be automatic, not exhausting. 🧠💼