AI Career Copilot combines a FastAPI backend with a Next.js frontend to deliver resume rewriting, skill-gap analysis, role-fit scoring, career coaching, job alerts, and progress tracking powered by Google Gemini. The project now supports a multi-step analyzer wizard, persistent dashboards, and commercial licensing.
.
βββ backend/
β βββ src/
β β βββ api/api.py # FastAPI application with 20+ endpoints
β β βββ models/gemini.py # Gemini model wrappers
β β βββ utils/prompts.py # Prompt builders for all features
β βββ requirements.txt
β βββ tests/
β βββ test_api.py
β βββ test_prompts.py
β βββ ...
βββ frontend/
β βββ smart-ats-ui/
β βββ app/
β β βββ dashboard/
β β β βββ page.tsx # Dashboard home
β β β βββ analyzer/page.tsx # 5-step wizard (new)
β β β βββ analyze/page.tsx # Legacy single-page analyzer
β β β βββ coach/page.tsx # Career coach chat
β β β βββ jobs/page.tsx # Job alerts & tracker
β β βββ page.tsx # Landing page
β βββ components/
β β βββ analyzer/
β β βββ dashboard/
β β βββ jobs/
β β βββ visualizations/
β βββ store/useCareerCopilotStore.ts # Zustand persistence
β βββ package.json
β βββ pnpm-lock.yaml
βββ LICENSE-commercial
βββ README.md (this file)
βββ .gitignore
- 20+ endpoints covering resume intelligence, coaching, job insights, analytics, and progress tracking
- Google Gemini integration with structured prompt outputs
- PDF parsing, ATS simulation, orchestration planning, knowledge graph prompts, and more
- Test suite with pytest + httpx
- Analyzer Wizard: 5-step guided flow with resume upload, job description, module selection, progress, and results
- Results Dashboard: Tabbed interface with Recharts visualizations (skill heatmap, keyword cloud, radar)
- Career Coach: Persistent chat with suggested prompts and resume context
- Job Search Hub: AI job alerts, application tracker, saved searches
- Dashboard Home: Quick actions, live stats, recent activity, progress tracker
- Zustand store for cross-page persistence (analysis history, job data, coach conversation)
- The project ships with a commercial license (
LICENSE-commercial). - Contact the maintainers to obtain rights for redistribution or resale.
- Open-source dependencies retain their respective licenses.
cd backend
python3 -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
# Configure environment
cp .env.example .env # create if needed
echo "GOOGLE_API_KEY=your_key" >> .env
# Run API
uvicorn src.api.api:app --reloadThe API serves Swagger docs at http://localhost:8000/docs and ReDoc at /redoc.
cd frontend/smart-ats-ui
pnpm install
# Set API base URL
echo "NEXT_PUBLIC_API_BASE_URL=http://localhost:8000" >> .env.local
# Start dev server
pnpm devVisit http://localhost:3000 for the landing page and /dashboard for the app.
- Upload β PDF drag/drop and/or paste resume text
- Job Description β paste full JD (min length validation)
- Pick Analyses β select modules or use quick picks
- Processing β live progress bar and status updates
- Results β tabbed insights, overall score badge, before/after comparison, visualizations
Results persist to the dashboard via the Zustand store (useCareerCopilotStore).
frontend/smart-ats-ui/store/useCareerCopilotStore.ts stores:
- Aggregate stats (total analyses, average match, skills improved)
- Recent analyses (for dashboard activity feed)
- Job applications + saved searches (for job tracker)
- Career coach conversation history
State persists in localStorage so browser refreshes keep context.
cd backend
source venv/bin/activate
python -m pytestAdd React Testing Library / Playwright suites as needed. Current focus is on end-to-end flows once backend endpoints are stable.
.gitignore has been updated to exclude:
- Python venvs (
venv/,.venv/, etc.) - Next.js build artifacts (
.next/,node_modules/) - Environment files (
backend/.env,frontend/.env.local) - Logs, coverage reports, temporary assets
Before committing:
git statusEnsure only relevant source changes are staged.
- Backend can be containerized with Uvicorn/Gunicorn for cloud deployment (AWS, GCP, Azure).
- Frontend supports Next.js static export or server rendering. Configure
NEXT_PUBLIC_API_BASE_URLaccordingly. - Add CI/CD pipelines to run backend tests and lint frontend before deploys.
- Commercial usage governed by
LICENSE-commercial. - Evaluate third-party API terms (Google Gemini) before production use.
- Do not commit API keys or customer data.
- Fork the repository
- Create your feature branch:
git checkout -b feature/awesome - Commit changes with context-rich messages
- Run backend tests and lint frontend
- Open a pull request detailing changes and testing steps
For licensing, enterprise support, or feature requests, contact the maintainers with project context and timelines.
Enjoy building with AI Career Copilot! π