Skip to content

aditya-2k23/ai-resume-analyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

23 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🎯 AI Resume Analyzer (Resumind)

Resumind is an intelligent resume analysis platform that helps job seekers optimize their resumes for better ATS (Applicant Tracking System) compatibility and overall effectiveness. Built with modern React Router architecture and powered by AI technology, this application provides comprehensive feedback to improve job application success rates.

React Router React TypeScript TailwindCSS

✨ Key Features

πŸ” AI-Powered Analysis

Advanced artificial intelligence evaluates resumes across multiple dimensions including content quality, structure, tone & style, and skills alignment.

πŸ“Š ATS Compatibility Scoring

Specialized analysis for Applicant Tracking System optimization with actionable improvement recommendations.

🎯 Job-Specific Feedback

Tailored analysis based on target company and job description for personalized recommendations.

πŸ“ˆ Multi-Category Scoring

Comprehensive evaluation across:

  • Overall Resume Score (0-100)
  • ATS Compatibility
  • Content Quality
  • Structure & Formatting
  • Tone & Style
  • Skills Assessment

πŸ”„ Resume Portfolio Management

Track multiple resumes and their performance scores across different job applications.

πŸ“± Modern UI/UX

Responsive design with intuitive file upload, real-time processing status, and visual score displays using gauges, badges, and charts.

πŸ”’ Secure File Handling

PDF processing with automatic image conversion for preview generation.

πŸ› οΈ Technical Stack

  • Frontend: React 19 with React Router 7
  • Styling: TailwindCSS 4.1.4 with custom components
  • File Processing: PDF.js for document handling
  • File Upload: React Dropzone for drag-and-drop functionality
  • Storage: Puter cloud storage integration
  • AI Integration: Custom AI feedback engine
  • State Management: Zustand for global state
  • Build System: Vite with TypeScript support
  • Type Safety: Full TypeScript implementation

πŸš€ Getting Started

Prerequisites

  • Node.js 18+
  • npm or pnpm
  • Modern web browser

Installation

Clone the repository

git clone https://github.com/aditya-2k23/ai-resume-analyzer.git
cd ai-resume-analyzer

Install dependencies

npm install

Start the development server

npm run dev

Open your browser and navigate to http://localhost:5173

Environment Setup

Make sure you have the necessary environment variables configured for Puter integration and AI services.

πŸ“ Project Structure

resume-analyzer/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ components/          # Reusable React components
β”‚   β”‚   β”œβ”€β”€ ATS.tsx         # ATS score display
β”‚   β”‚   β”œβ”€β”€ Details.tsx     # Detailed feedback
β”‚   β”‚   β”œβ”€β”€ FileUploader.tsx # File upload component
β”‚   β”‚   β”œβ”€β”€ Navbar.tsx      # Navigation bar
β”‚   β”‚   β”œβ”€β”€ ResumeCard.tsx  # Resume preview card
β”‚   β”‚   β”œβ”€β”€ ScoreBadge.tsx  # Score status badge
β”‚   β”‚   β”œβ”€β”€ ScoreCircle.tsx # Circular score display
β”‚   β”‚   β”œβ”€β”€ ScoreGauge.tsx  # Score gauge component
β”‚   β”‚   └── Summary.tsx     # Score summary
β”‚   β”œβ”€β”€ lib/                # Utility libraries
β”‚   β”‚   β”œβ”€β”€ pdf2img.ts      # PDF to image conversion
β”‚   β”‚   β”œβ”€β”€ puter.ts        # Puter integration
β”‚   β”‚   └── utils.ts        # Common utilities
β”‚   β”œβ”€β”€ routes/             # Application routes
β”‚   β”‚   β”œβ”€β”€ auth.tsx        # Authentication
β”‚   β”‚   β”œβ”€β”€ home.tsx        # Home page
β”‚   β”‚   β”œβ”€β”€ resume.tsx      # Resume analysis view
β”‚   β”‚   └── upload.tsx      # Upload interface
β”‚   β”œβ”€β”€ app.css            # Global styles
β”‚   β”œβ”€β”€ root.tsx           # Root component
β”‚   └── routes.ts          # Route configuration
β”œβ”€β”€ constants/
β”‚   └── index.ts           # Application constants
β”œβ”€β”€ types/
β”‚   β”œβ”€β”€ index.d.ts         # Type definitions
β”‚   └── puter.d.ts         # Puter type definitions
β”œβ”€β”€ public/                # Static assets
└── package.json

🎨 Key Components

ScoreBadge

A reusable component that displays score-based badges:

  • Green "Strong" for scores > 70
  • Yellow "Good Start" for scores > 49
  • Red "Needs Work" for lower scores

ScoreGauge

Visual circular gauge displaying overall resume scores with color-coded indicators.

ATS Component

Dedicated ATS analysis display with:

  • ATS compatibility score
  • Specific improvement suggestions
  • Visual feedback indicators

πŸ“Š Scoring System

The application evaluates resumes across five key areas:

  1. Overall Score - Comprehensive rating (0-100)
  2. ATS Compatibility - How well the resume passes through automated systems
  3. Content Quality - Relevance and quality of information
  4. Structure & Formatting - Organization and visual appeal
  5. Skills Assessment - Skill relevance and presentation

πŸ”§ Development

Available Scripts

# Development server with HMR
npm run dev

# Type checking
npm run typecheck

# Production build
npm run build

# Start production server
npm run start

Code Quality

  • TypeScript for type safety
  • ESLint for code linting
  • Prettier for code formatting
  • Tailwind CSS for consistent styling

🚒 Production Deployment

Building for Production

npm run build

Docker Deployment

# Build Docker image
docker build -t ai-resume-analyzer .

# Run container
docker run -p 3000:3000 ai-resume-analyzer

Deployment Platforms

This application can be deployed to:

  • Vercel (Recommended for React Router apps)
  • Netlify
  • AWS ECS
  • Google Cloud Run
  • Azure Container Apps
  • Digital Ocean App Platform
  • Fly.io
  • Railway

🎯 Use Cases

  • Job Seekers - Optimize resumes for specific positions
  • Career Coaches - Provide data-driven resume feedback
  • Recruitment Consultants - Assess candidate resume quality
  • Students - Prepare for job applications
  • Professionals - Update resumes for career advancement

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ™ Acknowledgments

  • React Router team for the excellent framework
  • Tailwind CSS for the utility-first styling approach
  • PDF.js for robust PDF processing
  • The open-source community for inspiration and tools

Built with ❀️ using React Router, TypeScript, and modern web technologies.

About

Resumind is an intelligent resume analysis platform that helps job seekers optimize their resumes.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published