Skip to content
Sergei Emelianov edited this page Aug 12, 2026 · 70 revisions

career-ops-ui

A clean, docs-style web interface for the career-ops AI job-search pipeline. Search, evaluate, deep-dive, apply, and track every offer from a single browser tab — instead of bouncing between an AI coding CLI, terminals, and markdown files.

Current release: v1.152.0 · Node ≥ 18 · Express 4 + vanilla-JS SPA · 79 scanner adapters · 32 route modules · 17 UI locales · 2392 unit tests.

Unofficial UI — not affiliated with or endorsed by career-ops / santifer.

What it is

career-ops-ui is an Express + vanilla-JS single-page app that puts a CRM-style browser surface on top of the Fighter90/career-ops CLI job-search system. It does not replace career-ops — it runs inside a career-ops project as career-ops/web-ui/ and reads/writes the same files (cv.md, config/profile.yml, data/applications.md, reports/, portals.yml, …) through the parent folder via ../.

The CLI keeps owning slash-command modes and form-fill (via Playwright MCP); the SPA gives you a visual dashboard over the same data. Both share one source of truth on your local disk — no cloud accounts, no telemetry, no auto-submit.

  • Stack: Node ≥ 18, Express 4, js-yaml, multer (server) · hand-written vanilla JS with a hash-router, no framework, no build step (SPA) · node --test (tests).
  • Runs at: http://127.0.0.1:4317 (loopback by default).
  • Two ways to reach an LLM: either run career-ops inside your AI coding CLI, or set one provider API key in #/config and the UI's ⚡ live features call the provider directly (headless, no CLI required).

Key capabilities

  • Zero-token portal scanning — 72 self-registering adapters (67 EN-region ATS/boards + 5 RU sources) hit public job-board APIs directly, in-process, at zero LLM cost. The full list with links lives on the landing: https://cvstart.org/#sources (registry-synced at build).
  • Offer evaluation & reports — six-dimension 0.0–5.0 rubric evaluations, deep company research, and generated PDF/DOCX résumés.
  • Application tracker — full pipeline funnel with the canonical Hired status and a job-landed banner.
  • CV Studio — voice-match humanize, JD-tailored CV + cover letter, résumé diagnostics, in-browser PII masking, add-to-CV from a URL.
  • Interview toolkit — interview-prep briefs, a live mock-interview, two-pager, networking planner, career plan, career orientation.
  • Statistics — five tabs including an AI market/salary report, own-pipeline analytics, target-role trend, rejection patterns, and a Lifetime roll-up relayed from the parent.
  • Grounded AI help — an "Ask the docs" assistant answering only from the in-app help guide, plus an AI usage & cost HUD.
  • Security-first — strict CSP (no inline scripts), SSRF-guarded URL fetches, single-boundary XSS sanitizers, and a strict parent-read-only contract.

Documentation map

Page What's inside
Getting Started Requirements, install (curl / nested clone), bin/start.sh vs npm start, how it finds the parent project, first-run tips.
Architecture The Express orchestrator + server/lib + 32 route modules, the SPA, the two scanner registries, the parent read-only contract, data flows.
Features Every #/ view and the API routes behind it.
API Reference The REST + SSE surface grouped by route module, read vs write, fail-soft contracts.
Scanner Providers All 67 EN adapters + 5 RU sources, how to add one, the two-registry rule, SSRF host-pinning.
Security CSP, SSRF guard, XSS boundaries, rate limiting, secrets hygiene, CodeQL posture.
Testing and QA The test pyramid, CI gates, CI-isolation rules, QA methodology.
Localization 17 locales, dict files + assembler, adding keys/locales, RTL, help-bundle parity.
Release Process Version bump, ×17 CHANGELOG/help parity, tag → release → publish.
Troubleshooting & FAQ Common issues and hard-won lessons.

Links

Languages

This Home page is available in: Español · Português (Brasil) · 한국어 · 日本語 · Русский · 简体中文 · 繁體中文 · Français · Polski · Українська · Dansk · العربية · Deutsch · Italiano · Türkçe · हिन्दी

The detailed reference pages (Architecture, API, Security, …) are maintained in English only.

Clone this wiki locally