* feat(post-application): add schema and shared types for provider ingestion (#136) * test(orchestrator): ensure full localStorage shape in vitest setup * feat(post-application): add provider registry and dispatcher framework (#137) (#146) * Implement Gmail provider credential persistence (#147) * Add unified post-application provider action API (#148) * Implement Gmail ingestion sync with 95/60 relevance policy * Implement Gmail ingestion sync with 95/60 relevance policy (#149) * feat(post-application): add job mapping engine with llm rerank fallback * feat(post-application): add inbox review APIs with transactional approve/deny (#151) * feat(post-application): add tracking inbox UI with provider controls (#152) * oauth implementation * UI changes * see past runs in more detail * occurred at comes from email * state mismatch * better UI representation * comments * comments * comments * comments * documentation * explainer * set things manually * scrolling * any found email can be pending * searchable download * Email-to-Job Matching Decision Tree * email viewer list improvement * simplification initial commit * exclude discovered jobs * show only resady * dropdown * mermaid * syntax * targets is the same as logging that is done manually * event label * duplicate avoidance * clean up html * token saving * print * send idx not uuid * remove logging * formatting * better documentation * documentation * comments * process all * comments
JobOps Documentation
Welcome to the JobOps documentation. This folder contains comprehensive guides for setting up, configuring, and using JobOps.
Getting Started
- Self-Hosting Guide - Deploy JobOps with Docker Compose
- Docker setup instructions
- Gmail OAuth configuration for email tracking
- Environment variables reference
- Demo mode deployment
Feature Documentation
-
Orchestrator - Core job workflow and PDF generation
- Job states explained (discovered, ready, applied, etc.)
- The "Ready" flow (manual vs auto)
- PDF generation and regeneration
- Post-application tracking overview
-
Post-Application Tracking - Email-to-job matching
- How the Smart Router AI works
- Gmail integration setup
- Using the Tracking Inbox
- Privacy and security details
- API reference
Extractors
JobOps uses specialized extractors to gather jobs from different sources:
- Extractors Overview - Architecture and how extractors work
- Gradcracker - UK graduate jobs and internships
- UKVisaJobs - UK visa sponsorship jobs
- JobSpy - Multi-platform job aggregator (Indeed, LinkedIn, etc.)
- Manual Import - Import jobs from URLs or text
Quick Reference
Main Components
- Orchestrator - Main application (UI, API, database)
- Extractors - Specialized job crawlers
- Shared - Common types and utilities
Key Features
- Job Discovery - Automatically find jobs from multiple sources
- AI Scoring - Rank jobs by suitability for your profile
- Resume Tailoring - Generate custom resumes for each job
- PDF Export - Create tailored PDFs via RxResume integration
- Application Tracking - Monitor your applied jobs
- Email Tracking - Auto-track post-application responses (interviews, offers, rejections)
Documentation Structure
documentation/
├── self-hosting.md # Deployment guide
├── orchestrator.md # Core workflow documentation
├── post-application-tracking.md # Email tracking feature
└── extractors/ # Job source extractors
├── README.md
├── gradcracker.md
├── jobspy.md
├── manual.md
├── ukvisajobs.md
└── gradcracker.md
Contributing to Documentation
When adding new features:
- Update the relevant feature documentation
- Add API endpoint documentation to orchestrator README
- Update this index if adding new docs
- Include mermaid diagrams for complex workflows
- Provide practical examples
Support
- Open an issue for documentation errors
- Check existing docs before asking questions
- See main README for general project info