How kalyansai956/smarthire_ats works
SmartHire is a resume-analysis and career workspace: users submit a resume, optionally with a job description, and receive ATS-oriented scoring, match information, quality findings, and recommendations. The tree also shows history, PDF reports, profile, usage, and configurable LLM-provider features. Sampled source confirms the API entry points, resume parsing, history access, and report generation; the README contains no further product detail, and wiring among several analysis engines and LLM modules is not fully shown.
Main entry points: App.jsx Web application · main.py FastAPI application · routes.py Analysis and history routes · api.js API client
Components 28
Career workspace
- Web application
web/src/App.jsx - Analyze resume
web/src/pages/Analyze.jsx - Analysis history
web/src/pages/History.jsx - Analysis details
web/src/pages/Analysis.jsx - Job workspace
web/src/pages/Jobs.jsx - AI settings
web/src/pages/AISettings.jsx - API client
web/src/services/api.js
API and accounts
- FastAPI application
backend/main.py - Analysis and history routes
backend/api/routes.py - Authentication
backend/api/auth.py - Profile routes
backend/api/profile.py - Usage routes
backend/api/usage.py - LLM settings routes
backend/api/llm_settings.py
Resume intelligence
- Resume parser
backend/services/resume_parser.py - Resume analyzer
backend/services/resume_analyzer.py - ATS scoring
backend/services/advanced_ats_engine.py - Resume quality
backend/services/resume_quality_engine.py - Issue feedback
backend/services/feedback_engine.py - Recommendations
backend/services/recommendation_engine.py - Job description insights
backend/services/jd_intelligence_engine.py - Job matching
backend/services/jd_matcher.py
Persistence and AI
- Report generation
backend/services/report_generator.py - PDF export
backend/services/pdf_export.py - Supabase data access
backend/database/supabase_db.py - LLM gateway
backend/services/llm/gateway.py - Provider factory
backend/services/llm/factory.py - LLM providers
backend/services/llm/base.py
Other components
- Job seeker
Connections 22
- Job seeker → Web application: uses
- Web application → Analyze resume: routes to
- Web application → Analysis history: routes to
- Web application → Analysis details: routes to
- Web application → Job workspace: routes to
- Web application → AI settings: routes to
- Analyze resume → API client: submits analysis
- Analysis history → API client: requests history
- Analysis details → API client: requests details
- AI settings → API client: requests settings
- API client → FastAPI application: calls API
- FastAPI application → Analysis and history routes: mounts routes
- FastAPI application → Profile routes: mounts routes
- FastAPI application → Usage routes: mounts routes
- FastAPI application → LLM settings routes: mounts routes
- Analysis and history routes → Resume parser: parses upload
- Analysis and history routes → Supabase data access: reads and writes
- Analysis and history routes → Report generation: requests reports
- Analysis and history routes → PDF export: exports PDF
- LLM settings routes → Supabase data access: manages credentials
- LLM gateway → Provider factory: selects provider
- Provider factory → LLM providers: creates provider