Skip to content

shivarag200701/AI-Powered-Resume-Analyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

10 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿš€ AI Resume Analyzer - RESUMID

AI Resume Analyzer React Router TypeScript Tailwind CSS Puter.js

An intelligent resume analysis platform powered by AI that provides comprehensive feedback, ATS scoring, and personalized improvement recommendations.

๐ŸŒŸ Live Demo โ€ข ๐Ÿ“š Documentation โ€ข ๐Ÿš€ Quick Start


๐ŸŽฏ Overview

RESUMID is a modern, full-stack web application that leverages artificial intelligence to analyze resumes and provide detailed feedback to job seekers. Built with cutting-edge technologies, it offers a seamless user experience for uploading resumes, receiving AI-powered analysis, and tracking application progress.

๐ŸŒŸ Key Highlights

  • ๐Ÿค– AI-Powered Analysis: Utilizes Claude AI for comprehensive resume evaluation
  • ๐Ÿ“Š ATS Compatibility Scoring: Analyzes how well resumes pass through Applicant Tracking Systems
  • ๐ŸŽจ Modern UI/UX: Beautiful, responsive design with smooth animations
  • โ˜๏ธ Cloud-First Architecture: Leverages Puter.js for seamless cloud integration
  • ๐Ÿ” Secure Authentication: Built-in user authentication and session management
  • ๐Ÿ“ฑ Mobile Responsive: Optimized for all device sizes

โœจ Features

๐Ÿ” Comprehensive Resume Analysis

  • Overall Score Calculation: Intelligent scoring algorithm based on multiple factors
  • Category-wise Breakdown: Detailed analysis of:
    • ๐Ÿ“ Tone & Style: Professional language assessment
    • ๐Ÿ“‹ Content Quality: Relevance and completeness evaluation
    • ๐Ÿ—๏ธ Structure: Format and organization analysis
    • ๐Ÿ› ๏ธ Skills Assessment: Technical and soft skills evaluation
    • ๐ŸŽฏ ATS Compatibility: Applicant Tracking System optimization

๐ŸŽจ Interactive User Interface

  • Drag & Drop Upload: Intuitive PDF resume upload with progress tracking
  • Real-time Processing: Live status updates during analysis
  • Expandable Details: Accordion-based detailed feedback sections
  • Visual Score Indicators: Gauge charts and color-coded badges
  • Responsive Grid Layout: Optimized for desktop, tablet, and mobile

โ˜๏ธ Cloud Integration via Puter.js

  • File Storage: Secure cloud storage for resumes and generated images
  • AI Processing: Direct integration with Claude AI models
  • Key-Value Database: Persistent data storage for user sessions
  • Authentication: Seamless user management and access control

๐Ÿ—๏ธ Architecture & Technical Implementation

๐Ÿ“ Project Structure

AI-Resume-Analyzer/
โ”œโ”€โ”€ app/
โ”‚   โ”œโ”€โ”€ components/           # Reusable UI components
โ”‚   โ”‚   โ”œโ”€โ”€ Accordion.tsx    # Collapsible content sections
โ”‚   โ”‚   โ”œโ”€โ”€ FileUploader.tsx # Drag & drop file upload
โ”‚   โ”‚   โ”œโ”€โ”€ ScoreGauge.tsx   # Animated score visualization
โ”‚   โ”‚   โ”œโ”€โ”€ ScoreBadge.tsx   # Color-coded score indicators
โ”‚   โ”‚   โ”œโ”€โ”€ TipCard.tsx      # Feedback recommendation cards
โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ”œโ”€โ”€ lib/                 # Core utilities and services
โ”‚   โ”‚   โ”œโ”€โ”€ puter.ts         # Puter.js integration layer
โ”‚   โ”‚   โ”œโ”€โ”€ pdf2image.ts     # PDF to image conversion
โ”‚   โ”‚   โ””โ”€โ”€ utils.ts         # Helper functions
โ”‚   โ”œโ”€โ”€ routes/              # Application pages
โ”‚   โ”‚   โ”œโ”€โ”€ home.tsx         # Dashboard with resume list
โ”‚   โ”‚   โ”œโ”€โ”€ upload.tsx       # Resume upload and analysis
โ”‚   โ”‚   โ”œโ”€โ”€ resume.tsx       # Detailed feedback view
โ”‚   โ”‚   โ””โ”€โ”€ auth.tsx         # Authentication flow
โ”‚   โ””โ”€โ”€ types/               # TypeScript definitions
โ”œโ”€โ”€ constants/               # Application constants
โ”œโ”€โ”€ public/                  # Static assets
โ””โ”€โ”€ ...

๐Ÿ”ง Core Technologies

Frontend Stack

  • React 19 - Latest React with concurrent features
  • React Router 7 - Modern routing with data loading
  • TypeScript - Type-safe development
  • Tailwind CSS 4 - Utility-first styling with custom design system
  • Zustand - Lightweight state management
  • React Dropzone - File upload handling

Backend Services (via Puter.js)

  • Claude AI Integration - Advanced language model for resume analysis
  • Cloud File Storage - Secure file management
  • Key-Value Database - Fast data persistence
  • Authentication Service - User management and sessions

PDF Processing

  • PDF.js - Client-side PDF rendering and conversion
  • Canvas API - High-quality image generation from PDFs

๐Ÿš€ Getting Started

๐Ÿ“‹ Prerequisites

  • Node.js (v18 or higher)
  • npm or yarn
  • Puter.js Account (for cloud services)

โšก Quick Setup

  1. Clone the repository

    git clone https://github.com/shivarag200701/ai-resume-analyzer.git
    cd ai-resume-analyzer
  2. Install dependencies

    npm install
  3. Start development server

    npm run dev
  4. Open your browser Navigate to http://localhost:5173

๐Ÿญ Production Build

# Build for production
npm run build

# Start production server
npm start

๐Ÿณ Docker Deployment

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

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

๐Ÿ”Œ Puter.js Integration Deep Dive

๐ŸŽฏ Why Puter.js?

Puter.js provides a comprehensive cloud platform that eliminates the need for traditional backend infrastructure. This application leverages Puter's services for:

๐Ÿ” Authentication System

// Seamless authentication flow
const { auth } = usePuterStore();

// Check authentication status
const isAuthenticated = await auth.checkAuthStatus();

// Sign in/out with built-in UI
await auth.signIn();
await auth.signOut();

๐Ÿ“ File Storage Management

// Upload resume files
const uploadedFile = await fs.upload([pdfFile]);

// Convert PDF to image for preview
const imageFile = await convertPdfToImage(pdfFile);
const uploadedImage = await fs.upload([imageFile]);

// Retrieve files with blob conversion
const resumeBlob = await fs.read(filePath);
const resumeUrl = URL.createObjectURL(resumeBlob);

๐Ÿค– AI Integration

// Direct Claude AI integration
const feedback = await ai.feedback(
  uploadedFile.path,
  prepareInstructions({ jobTitle, jobDescription })
);

// Structured AI response processing
const feedbackData = JSON.parse(feedback.message.content);

๐Ÿ—„๏ธ Key-Value Database

// Store resume analysis data
await kv.set(`resume:${uuid}`, JSON.stringify(resumeData));

// Retrieve user's resume history
const resumes = await kv.list("resume:*", true);

๐ŸŽจ UI/UX Design System

๐ŸŽฏ Design Philosophy

  • Clean & Modern: Minimalist interface focusing on content
  • Accessible: WCAG compliant with proper contrast ratios
  • Responsive: Mobile-first approach with progressive enhancement
  • Interactive: Smooth animations and micro-interactions

๐ŸŽจ Custom Components

ScoreGauge Component

  • Animated SVG gauge with gradient fills
  • Real-time score visualization
  • Responsive scaling for different screen sizes

Accordion System

  • Collapsible content sections
  • Smooth expand/collapse animations
  • Keyboard navigation support
  • Multiple sections can be open simultaneously

File Uploader

  • Drag & drop functionality with visual feedback
  • File validation and size limits
  • Progress indicators and error handling
  • Preview capabilities with file details

๐ŸŽจ Color System

/* Custom color palette */
--color-badge-green: #d5faf1; /* Success states */
--color-badge-yellow: #fceed8; /* Warning states */
--color-badge-red: #f9e3e2; /* Error states */

/* Gradient system */
.text-gradient {
  background: linear-gradient(to right, #ab8c95, #000000, #8e97c5);
}

๐Ÿง  AI Analysis Engine

๐ŸŽฏ Analysis Categories

The AI engine evaluates resumes across five key dimensions:

1. Overall Score (0-100)

Comprehensive rating based on all analysis factors

2. ATS Compatibility

  • Keyword optimization
  • Format compatibility
  • Structure analysis
  • Parsing efficiency

3. Tone & Style

  • Professional language usage
  • Consistency in voice
  • Industry-appropriate terminology
  • Grammar and clarity

4. Content Quality

  • Relevance to job requirements
  • Achievement quantification
  • Skills representation
  • Experience articulation

5. Structure & Format

  • Visual hierarchy
  • Section organization
  • Readability factors
  • Length optimization

๐Ÿค– AI Prompt Engineering

const prepareInstructions = ({ jobTitle, jobDescription }) => `
You are an expert in ATS and resume analysis.
Analyze this resume considering:
- Job Title: ${jobTitle}
- Job Description: ${jobDescription}

Provide detailed feedback using structured JSON format...
`;

๐Ÿ“Š Performance & Optimization

โšก Performance Features

  • Code Splitting: Route-based lazy loading
  • Image Optimization: WebP format with fallbacks
  • Bundle Analysis: Optimized dependency management
  • Caching Strategy: Efficient file and data caching

๐Ÿ“ฑ Mobile Optimization

  • Responsive Grid: Adaptive layouts for all screen sizes
  • Touch Interactions: Optimized for mobile gestures
  • Progressive Loading: Content loads as needed
  • Offline Support: Basic functionality without internet

๐Ÿ”’ Security & Privacy

๐Ÿ›ก๏ธ Security Measures

  • Secure File Upload: Validated file types and size limits
  • Authentication: Session-based user management
  • Data Encryption: Secure transmission and storage
  • Input Validation: Comprehensive form validation

๐Ÿ” Privacy Protection

  • Data Minimization: Only necessary data is collected
  • Secure Storage: Files stored in encrypted cloud storage
  • User Control: Users can delete their data anytime
  • No Data Sharing: Resume content remains private

๐Ÿš€ Deployment Options

โ˜๏ธ Cloud Platforms

  • Vercel - Optimized for React applications
  • Netlify - JAMstack deployment with CI/CD
  • Railway - Full-stack deployment with database
  • AWS/GCP/Azure - Enterprise-grade cloud hosting

๐Ÿณ Containerization

  • Docker - Containerized deployment
  • Kubernetes - Scalable container orchestration
  • Docker Compose - Local development environment

๐Ÿ”ฎ Future Enhancements

๐ŸŽฏ Planned Features

  • Multi-language Support - Resume analysis in multiple languages
  • Industry-specific Analysis - Tailored feedback for different sectors
  • Resume Builder - Integrated resume creation tool
  • Job Matching - AI-powered job recommendation system
  • Team Collaboration - HR team features for bulk analysis
  • API Integration - REST API for third-party integrations

๐Ÿ”ง Technical Improvements

  • Real-time Collaboration - Live editing and feedback
  • Advanced Analytics - Detailed performance metrics
  • A/B Testing Framework - Feature experimentation
  • Progressive Web App - Offline functionality
  • Voice Commands - Accessibility improvements

๐Ÿค Contributing

We welcome contributions from the community! Here's how you can help:

๐Ÿ› Bug Reports

  • Use the GitHub issue tracker
  • Provide detailed reproduction steps
  • Include screenshots and error messages

๐Ÿ’ก Feature Requests

  • Describe the feature and its benefits
  • Provide use cases and examples
  • Consider implementation complexity

๐Ÿ”ง Development Setup

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


๐Ÿ™ Acknowledgments

  • Puter.js Team - For providing an excellent cloud platform
  • Anthropic - For the powerful Claude AI model
  • React Router Team - For the modern routing solution
  • Tailwind CSS - For the utility-first CSS framework
  • Open Source Community - For the amazing tools and libraries

๐Ÿ“ž Contact & Support

Built with โค๏ธ for the developer community

LinkedIn GitHub Email


โญ Star this repository if you found it helpful!

๐Ÿš€ View Live Demo | ๐Ÿ“š Read Documentation | ๐Ÿ› Report Issues

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors