https://github.com/dakheera47/job-ops
job-ops: DevOps principles applied to job hunting. A self-hosted pipeline to track, analyze, and assist your application process
https://github.com/dakheera47/job-ops
automation career dashboard docker job-search jobhunt jobtracker nextjs productivity self-hosted sponsorship
Last synced: 3 months ago
JSON representation
job-ops: DevOps principles applied to job hunting. A self-hosted pipeline to track, analyze, and assist your application process
- Host: GitHub
- URL: https://github.com/dakheera47/job-ops
- Owner: DaKheera47
- License: other
- Created: 2025-12-11T23:57:21.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2026-04-14T19:56:25.000Z (3 months ago)
- Last Synced: 2026-04-14T21:27:23.742Z (3 months ago)
- Topics: automation, career, dashboard, docker, job-search, jobhunt, jobtracker, nextjs, productivity, self-hosted, sponsorship
- Language: TypeScript
- Homepage: https://jobops.dakheera47.com/
- Size: 4.53 MB
- Stars: 2,620
- Watchers: 5
- Forks: 295
- Open Issues: 26
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Agents: AGENTS.md
Awesome Lists containing this project
README
# JobOps
**One search across every board. One click to tailor your CV. One place to track it all.**
Your ironman suit for job hunting. You still apply to every job yourself. JobOps just makes you ten times faster.
[](https://github.com/DaKheera47/job-ops)
[](https://github.com/DaKheera47/job-ops/pkgs/container/job-ops)
[](https://github.com/DaKheera47/job-ops/actions/workflows/ghcr.yml)
[](https://github.com/DaKheera47/job-ops/graphs/contributors)
800+ users · 4,000+ job searches run · #3 on GitHub Trending for TypeScript

---
## What is JobOps?
JobOps searches LinkedIn, Indeed, Glassdoor and 10+ job boards from one screen, rewrites your CV for each role, scores your fit, checks visa sponsorship status, and tracks every application in one place.
It does not auto-apply. Recruiters can tell when applications are automated and it gets you blacklisted. JobOps gives you the speed without sacrificing quality.
https://github.com/user-attachments/assets/ec5bc249-aad5-41f2-b1ff-f7b3b6e6f7b8
---
## Quick Start
Prefer a guided walkthrough? Follow the [Self-Hosting Guide](https://jobops.dakheera47.com/docs/getting-started/self-hosting).
```bash
git clone https://github.com/DaKheera47/job-ops.git
cd job-ops
docker compose up -d
```
Open `http://localhost:3005` and follow the onboarding wizard. You'll be searching in under 10 minutes.
---
## How It Works
| Step | What happens |
|------|-------------|
| **Search** | Scrapes 10+ job boards for roles matching your criteria |
| **Score** | AI ranks each job 0-100 against your profile |
| **Tailor** | Generates a rewritten CV matched to each job description |
| **Export** | Creates a polished PDF locally, or via [Reactive Resume](https://rxresu.me) |
| **Track** | Connects to Gmail and auto-detects interviews, offers, and rejections |
---
## Supported Job Boards
| Platform | Focus |
|----------|-------|
| LinkedIn | Global |
| Indeed | Global |
| Glassdoor | Global |
| Adzuna | Multi-country API |
| Hiring Cafe | Global |
| startup.jobs | Startup/remote roles |
| Working Nomads | Remote-only |
| Gradcracker | STEM/Grads (UK) |
| UK Visa Jobs | Sponsorship (UK) |
| Golang Jobs | Go developers |
Custom extractors can be added via TypeScript. See the [extractor docs](https://jobops.dakheera47.com/docs/extractors/overview).
---
## Post-Application Tracking
Connect your Gmail and JobOps watches for recruiter replies automatically.
- *"We'd like to invite you to interview..."* → Status updates to **Interviewing**
- *"Unfortunately we won't be progressing..."* → Status updates to **Rejected**
No manual updates. No spreadsheets. See the [tracking docs](https://jobops.dakheera47.com/docs/features/post-application-tracking) for setup.
---
## AI Providers
JobOps works with the model provider you already use:
- Codex (local app-server in Docker, authenticated with `codex login`)
- OpenAI
- Google Gemini
- OpenRouter
- Any OpenAI-compatible endpoint (Ollama, LM Studio, etc.)
---
## Cloud
Don't want to self-host? JobOps Cloud gives you your own hosted instance with nothing to install.
| | BYOK | Zero Setup |
|---|:---:|:---:|
| **Price** | £20/month | £50/month |
| **All features** | ✓ | ✓ |
| **Your own instance** | ✓ | ✓ |
| **Managed updates** | ✓ | ✓ |
| **AI provider** | Bring your own key | Included, no config needed |
| | [Get Started](https://buy.stripe.com/bJeeVc67v9S42AFeWj4c800) | [Get Started](https://buy.stripe.com/dRmbJ0cvT2pC2AF6pN4c801) |
Self-hosted will always be free and open source.
---
## Documentation
- [Documentation Home](https://jobops.dakheera47.com/docs/)
- [Self-Hosting Guide](https://jobops.dakheera47.com/docs/getting-started/self-hosting)
- [Feature Overview](https://jobops.dakheera47.com/docs/features/overview)
- [Orchestrator Pipeline](https://jobops.dakheera47.com/docs/features/orchestrator)
- [Extractor System](https://jobops.dakheera47.com/docs/extractors/overview)
- [Troubleshooting](https://jobops.dakheera47.com/docs/troubleshooting/common-problems)
---
## Contributing
Contributions are welcome. Whether it's code, docs, or new extractors, start with [`CONTRIBUTING.md`](./CONTRIBUTING.md).
---
## Star History
---
## Analytics
JobOps includes anonymous usage analytics (Umami) to help improve the product. To opt out, block `umami.dakheera47.com` in your firewall or DNS.
## License
**AGPLv3 + Commons Clause**
You can self-host, use, and modify JobOps freely. You cannot sell the software itself or offer paid hosted services whose value substantially comes from JobOps. See [LICENSE](LICENSE).
---
Built by [Shaheer Sarfaraz](https://github.com/DaKheera47)
[Website](https://jobops.app) · [Cloud](https://jobops.app) · [Documentation](https://jobops.dakheera47.com/docs/) · [Ko-fi](https://ko-fi.com/shaheersarfaraz)