AiToS is a full-stack web application and CLI tool that analyzes resumes against job descriptions using local AI models via Ollama, simulating Applicant Tracking System (ATS) behavior to help job seekers understand how their resume may be scored.
- Upload and analyze resumes (PDF, DOCX) against job descriptions
- ATS-style scoring: keyword match, parsing clarity, formatting safety
- Manage CVs, job descriptions, and analysis reports through a web interface
- Standalone CLI tools for quick analysis and tailored CV generation
- Fully containerized — bring your own Ollama models
docker compose up --build- Frontend: http://localhost:3001
- Backend API: http://localhost:3000
Docker pulls all required services. No local Node.js or Ollama installation needed.
See cli/README.md for more details.
To run only CLI dependencies (Tika + Ollama), use:
docker compose -f docker-compose.cli.yml up -dTo pre-pull model(s) first:
OLLAMA_INIT_MODELS="gemma4:31b" docker compose -f docker-compose.cli.yml --profile init up ollama-initTo reuse models from a local Ollama install, mount the local model directory:
OLLAMA_MODELS_PATH="$HOME/.ollama" docker compose -f docker-compose.cli.yml up -dThen pass --tika-url and --ollama-url to the CLI scripts.
For the full feature breakdown, API reference, scoring details, local development setup, and deployment options see README_DEV.md.
Hi there! 👋 This is a small experimental project I hacked together over a weekend to turn a shell script into a web application.
I'm not a web developer by trade, so most of the web app code was generated with GitHub Copilot and refined by me. The real work was in validating what Copilot produced and designing the LLM prompts, which I iterated on with a bit of help from ChatGPT.
The app runs on Linux and should work on macOS. Docker Compose may also work on Windows via WSL, though that's untested.
- Outputs are provided as-is for experimentation and learning.
- Analysis quality is not guaranteed, and suggestions may be incomplete or incorrect.
- You are fully responsible for reviewing and validating any CV or job application material you submit or generate.
- This project is not a career advisory service, and the author accepts no responsibility for application outcomes.
- This project is shared as-is and is working in its current form.
- Feel free to fork and adapt it in your own way and at your own pace.
