- 🤖 AI-Powered Analysis - Automatically analyze resumes against job requirements
- 📊 Smart Ranking - Rank candidates based on skills, experience, and education match
- 🔍 Detailed Insights - Get AI-generated candidate insights
- 📱 Responsive Design - Works seamlessly on desktop, tablet, and mobile devices
- 🎯 Skills Matching - Identify matched and missing skills
- 📄 Resume Management - Upload and manage multiple resumes
- Frontend: Next.js, React, TypeScript, Tailwind CSS
- UI Components: shadcn/ui
- Animations: Framer Motion
- AI Integration: OpenAI GPT-4
- File Processing: PDF.js, mammoth.js
- Node.js 18.0 or later
- npm or yarn
- Clone the repository:
git clone https://github.com/aozoragh/ai-resume-screener.git cd ai-resume-screener - Install dependencies:
npm install # or yarn install - Set up environment variables:
Create a
.env.localfile in the root directory:NEXT_PUBLIC_APP_URL=http://localhost:3000 OPENAI_API_KEY=your_openai_api_key
- Start the development server:
npm run dev # or yarn dev - Open http://localhost:3000 in your browser.
- Enter the job title and description
- Add required skills
- Set minimum experience and education level
- Drag and drop resumes or use the file browser
- Supports PDF and DOCX formats
- Candidates ranked by match score
- View detailed candidate profiles
- See matched and missing skills
- Read AI-generated analysis
ai-resume-screening/
├── app/ # Next.js app directory
│ ├── layout.tsx # Root layout
│ └── page.tsx # Home page
├── components/ # React components
│ ├── candidate-detail.tsx
│ ├── candidate-results.tsx
│ ├── job-requirements-form.tsx
│ ├── resume-screening-dashboard.tsx
│ ├── resume-uploader.tsx
│ └── ui/ # UI components
├── lib/ # Utility functions and types
│ ├── resume-analyzer.ts
│ └── types.ts
├── public/ # Static assets
└── ... # Config files
Modify the theme in tailwind.config.js.
Configure model parameters in lib/resume-analyzer.ts.