Create stunning, ATS-friendly resumes in minutes with intelligent AI assistance
- AI-Powered Content Enhancement - Intelligent suggestions for professional summaries, job descriptions, and project details
- Real-time Preview - See your resume as you build it with live updates
- Multiple Templates - Professional, modern designs optimized for ATS systems
- Custom Accent Colors - Personalize your resume with brand colors
- Secure Authentication - JWT-based login and registration system
- Personal Dashboard - Manage all your resumes in one place
- Resume Privacy Controls - Make resumes public or private
- Profile Management - Update personal information and preferences
- Professional Summary Enhancement - AI-powered optimization of career summaries
- Job Description Improvement - Enhance work experience descriptions with industry keywords
- Project Description Refinement - Polish project details for maximum impact
- Resume Parsing - Upload existing resumes and extract structured data
- Responsive Design - Works perfectly on desktop, tablet, and mobile
- Intuitive Interface - Clean, user-friendly design with smooth interactions
- Real-time Feedback - Toast notifications and loading states for better UX
- Print-Ready Output - Generate PDF-ready resumes for download and sharing
- React 19 - Modern React with latest features
- TypeScript - Type-safe development
- Tailwind CSS 4 - Utility-first styling
- Redux Toolkit - State management
- React Router - Client-side routing
- Lucide React - Beautiful icons
- React Hot Toast - Elegant notifications
- Axios - HTTP client
- Node.js - JavaScript runtime
- Express.js - Web framework
- TypeScript - Type-safe server development
- MongoDB - NoSQL database
- Mongoose - MongoDB object modeling
- JWT - Authentication tokens
- bcrypt - Password hashing
- Multer - File upload handling
- ImageKit - Image processing and CDN
- OpenAI API - GPT-powered content enhancement
- ImageKit - Image optimization and storage
- CORS - Cross-origin resource sharing
- Node.js (v18 or higher)
- MongoDB (local or cloud instance)
- OpenAI API key
- ImageKit account (for image handling)
-
Clone the repository
git clone https://github.com/amaan-ur-raheman/resumegen-ai.git cd resumegen-ai -
Install dependencies
# Install server dependencies cd server npm install # Install client dependencies cd ../client npm install
-
Environment Setup
Server (.env)
PORT=3000 MONGODB_URI=your_mongodb_connection_string JWT_SECRET=your_jwt_secret_key OPENAI_API_KEY=your_openai_api_key OPENAI_MODEL=gpt-3.5-turbo IMAGEKIT_PUBLIC_KEY=your_imagekit_public_key IMAGEKIT_PRIVATE_KEY=your_imagekit_private_key IMAGEKIT_URL_ENDPOINT=your_imagekit_url_endpoint
Client (.env)
VITE_API_URL=http://localhost:3000
-
Start the development servers
# Start server (from server directory) npm run server # Start client (from client directory) npm run dev
-
Access the application
- Frontend:
http://localhost:5173 - Backend:
http://localhost:3000
- Frontend:
resumegen-ai/
βββ client/ # React frontend
β βββ src/
β β βββ components/ # Reusable UI components
β β βββ pages/ # Page components
β β βββ app/ # Redux store configuration
β β βββ configs/ # API and configuration files
β β βββ types/ # TypeScript type definitions
β β βββ assets/ # Static assets
β βββ public/ # Public assets
βββ server/ # Node.js backend
β βββ controllers/ # Route controllers
β βββ models/ # MongoDB models
β βββ routes/ # API routes
β βββ middleware/ # Custom middleware
β βββ configs/ # Database and service configs
β βββ constants/ # AI prompts and constants
β βββ types/ # TypeScript type definitions
βββ public/ # Screenshots and assets
POST /api/users/register- User registrationPOST /api/users/login- User loginGET /api/users/data- Get user dataGET /api/users/resumes- Get user resumes
POST /api/resumes/create- Create new resumePUT /api/resumes/update- Update resumeDELETE /api/resumes/delete/:resumeId- Delete resumeGET /api/resumes/get/:resumeId- Get specific resumeGET /api/resumes/public/:resumeId- Get public resume
POST /api/ai/enhance-pro-sum- Enhance professional summaryPOST /api/ai/enhance-job-desc- Enhance job descriptionsPOST /api/ai/enhance-project-desc- Enhance project descriptionsPOST /api/ai/upload-resume- Parse and extract resume data
The codebase is fully documented with JSDoc/TSDoc. Refer to individual files for detailed code-level documentation.
The application leverages OpenAI's GPT models to intelligently enhance resume content:
- Professional Summary: Transforms basic career information into compelling professional summaries
- Job Descriptions: Enhances work experience with industry-relevant keywords and quantifiable achievements
- Project Descriptions: Refines project details to highlight technical skills and impact
- Multi-step Form: Organized sections for personal info, experience, education, projects, and skills
- Real-time Preview: Live preview updates as you edit content
- Template Selection: Choose from 4 professional templates (Classic, Modern, Minimal, Minimal with Image)
- Custom Accent Colors: Personalize your resume with brand colors
- Image Upload: Profile picture support with background removal options
- Resume Management: Create, edit, delete, and organize multiple resumes
- Privacy Controls: Toggle resume visibility between public and private
- Quick Actions: Duplicate, share, and export resumes with one click
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- OpenAI for providing powerful AI capabilities
- ImageKit for image processing and CDN services
- The open-source community for amazing tools and libraries
Built with β€οΈ by Amaan Ur Raheman
β Star this repo if you found it helpful!






