Skip to content

guglextech/ai-resume-builder-backend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

105 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

CV Generation App - Complete Project Description

πŸ“‹ Executive Summary

A modern, AI-powered CV/Resume builder platform that enables users to create professional, ATS-optimized resumes with intelligent content generation and premium customization features. The platform combines traditional CV building capabilities with cutting-edge AI assistance to help users stand out in the job market.


🎯 Core Value Proposition

Why Users Will Pay:

  • AI-Powered Content Generation: Intelligent job description writing and optimization
  • ATS Optimization: Automatic keyword optimization for applicant tracking systems
  • Premium Templates: Professionally designed, industry-specific layouts
  • Smart Tailoring: AI-powered resume customization for specific job postings
  • Real-time Feedback: CV scoring and improvement suggestions
  • Multi-format Export: PDF, Word, and web-optimized formats

πŸ’Ž Feature Breakdown

Tier 1: Free Features

Authentication & User Management

  • Email/password registration and login
  • JWT-based secure authentication
  • Email verification system
  • Password reset functionality
  • Basic user profile management
  • Profile photo upload (limited size)

Basic CV Building

  • Single CV creation and storage
  • Core sections:
    • Personal information and contact details
    • Work experience (up to 3 entries)
    • Education (up to 2 entries)
    • Skills (up to 10 skills)
    • Summary/Objective
  • Manual content entry
  • Basic text formatting
  • 2 free template options (Classic, Modern)

Export Options

  • PDF export with watermark
  • Standard formatting only
  • Single export per month

Tier 2: Premium Features πŸ’°

AI Content Generation

  • Smart Job Description Writer

    • Input: Job title + company + keywords
    • Output: Professional, achievement-focused descriptions
    • Multiple style options (formal, creative, technical)
    • Bullet point optimization
  • Achievement Quantifier

    • Converts basic descriptions into impact statements
    • Suggests metrics and numbers
    • Action verb recommendations
  • Skills Recommender

    • Analyzes work experience
    • Suggests relevant skills based on industry
    • Identifies skill gaps for target positions

ATS Optimization Suite

  • Keyword Analyzer

    • Scan job descriptions
    • Extract critical keywords
    • Highlight missing keywords in CV
    • Keyword density optimization
  • ATS Score & Feedback

    • Real-time CV scoring (0-100)
    • Section-by-section analysis
    • Formatting compatibility check
    • Actionable improvement suggestions
  • Job-Specific Tailoring

    • Upload job description
    • AI automatically adjusts CV content
    • Reorders sections for relevance
    • Suggests content modifications

Advanced CV Management

  • Unlimited CVs: Create versions for different industries/roles
  • Version Control: Track changes and revert to previous versions
  • Custom Sections: Add portfolio, certifications, publications, awards
  • Rich Content:
    • Unlimited work experience entries
    • Unlimited education entries
    • Unlimited skills with categorization
    • Project showcases with descriptions
    • Certification tracking with expiry dates

Premium Templates (20+ Options)

  • Industry-Specific: Tech, Finance, Creative, Healthcare, Legal
  • Style Variations: Modern, Minimalist, Executive, Creative, Academic
  • Full Customization:
    • Color schemes and palettes
    • Font combinations (15+ professional font pairs)
    • Layout adjustments (margins, spacing, columns)
    • Section ordering and visibility
    • Custom accent colors and headers

Enhanced Export

  • Multi-Format Export:

    • High-quality PDF (no watermark)
    • Microsoft Word (.docx)
    • Google Docs compatible
    • HTML for online portfolios
  • Custom File Names: Professional naming conventions

  • Batch Export: Download all CV versions at once

  • LinkedIn Integration: Export optimized for LinkedIn profile


Tier 3: Professional Features πŸ’Ό

AI Career Assistant

  • Cover Letter Generator

    • AI-generated personalized cover letters
    • Match CV content with job requirements
    • Multiple tone options
    • Edit and refine suggestions
  • Interview Preparation

    • Generate potential interview questions based on CV
    • Suggested STAR method responses
    • Weakness/strength analysis
  • Career Path Insights

    • Skill progression recommendations
    • Industry trend analysis
    • Salary range estimations based on experience

Advanced Analytics

  • CV Performance Tracking

    • View/download statistics per CV
    • Time spent by viewers (for shared links)
    • A/B testing different versions
  • Application Tracker

    • Track job applications
    • Link CVs to specific applications
    • Follow-up reminders
    • Status pipeline management

Collaboration Features

  • Shareable CV Links

    • Password-protected links
    • View expiry dates
    • Download permissions control
  • Feedback System

    • Share with mentors/colleagues for review
    • In-line commenting
    • Suggestion tracking
    • Version comparison

White-Label Options (Enterprise)

  • Custom branding for recruiters/agencies
  • Bulk user management
  • Team collaboration features
  • API access for integrations
  • Priority support

πŸ—οΈ Technical Architecture

Backend Stack

  • Framework: NestJS (TypeScript)
  • Database: MongoDB with Mongoose ODM
  • Authentication: JWT with refresh tokens
  • File Storage: AWS S3 / Azure Blob Storage
  • Email Service: SendGrid / AWS SES
  • AI Integration: OpenAI GPT-4 API / Anthropic Claude API

Core Modules

1. Authentication Module

- User registration/login
- JWT token generation and validation
- Refresh token rotation
- Email verification
- Password reset flow
- OAuth2 integration (Google, LinkedIn)

2. User Profile Module

- CRUD operations for user data
- Profile photo management
- Contact information
- Social media links
- Privacy settings

3. CV Content Module

Work Experience Service

  • Full CRUD operations
  • Position tracking (current/past)
  • Custom ordering
  • Date validation
  • AI description enhancement endpoint

Education Service

  • Academic records management
  • GPA and honors tracking
  • Ongoing education support
  • Achievement highlights

Skills Service

  • Categorized skill management (Technical, Soft, Language)
  • Proficiency level tracking (1-10 scale)
  • Skill recommendations via AI
  • Industry-standard skill matching

Additional Sections Service

  • Certifications with expiry tracking
  • Projects with descriptions and links
  • Publications and awards
  • Volunteer experience
  • Custom sections

4. Template Module

- Template CRUD operations
- Category management (Industry, Style)
- Premium/Free tier assignment
- Customization settings (colors, fonts, layouts)
- Template preview generation
- Version control for templates

5. AI Services Module

Content Generation Service

  • Job description writer
  • Achievement enhancer
  • Skills recommender
  • Cover letter generator

ATS Optimization Service

  • Keyword extraction from job descriptions
  • CV scoring algorithm
  • Formatting validation
  • Improvement suggestions

Tailoring Service

  • Job description analysis
  • Content relevance scoring
  • Automatic CV adjustments

6. Export Module

- PDF generation (Puppeteer/PDF-lib)
- Word document export (docx library)
- HTML template rendering
- Multi-format conversion
- Watermark management (free vs premium)

7. Analytics Module

- View tracking
- Download statistics
- Application tracking
- Performance metrics
- User behavior analysis

8. File Management Module

- Secure file upload
- File type validation
- Size restrictions (tiered)
- Cloud storage integration
- Image optimization

9. Payment Module

- Stripe integration
- Subscription management
- Payment webhooks
- Invoice generation
- Upgrade/downgrade handling

πŸ“Š Database Schema

Collections

Users

{
  _id: ObjectId,
  email: string (unique, indexed),
  password: string (hashed),
  firstName: string,
  lastName: string,
  profilePhoto: string,
  isEmailVerified: boolean,
  emailVerificationToken: string,
  resetPasswordToken: string,
  subscriptionTier: enum ['free', 'premium', 'professional'],
  subscriptionExpiry: Date,
  createdAt: Date,
  updatedAt: Date
}

CVs

{
  _id: ObjectId,
  userId: ObjectId (indexed, ref: Users),
  title: string,
  isDefault: boolean,
  templateId: ObjectId (ref: Templates),
  customization: {
    colors: object,
    fonts: object,
    layout: object
  },
  sections: {
    personalInfo: object,
    summary: string,
    workExperience: [ObjectId] (ref: WorkExperience),
    education: [ObjectId] (ref: Education),
    skills: [ObjectId] (ref: Skills),
    certifications: [ObjectId],
    projects: [ObjectId],
    customSections: [object]
  },
  visibility: enum ['private', 'unlisted', 'public'],
  shareToken: string (unique),
  atsScore: number,
  version: number,
  createdAt: Date,
  updatedAt: Date
}

WorkExperience

{
  _id: ObjectId,
  cvId: ObjectId (indexed),
  jobTitle: string,
  company: string,
  location: string,
  startDate: Date,
  endDate: Date,
  isCurrent: boolean,
  description: string,
  achievements: [string],
  order: number,
  aiGenerated: boolean,
  createdAt: Date,
  updatedAt: Date
}

Education

{
  _id: ObjectId,
  cvId: ObjectId (indexed),
  institution: string,
  degree: string,
  fieldOfStudy: string,
  location: string,
  startDate: Date,
  endDate: Date,
  isOngoing: boolean,
  gpa: number,
  honors: [string],
  coursework: [string],
  activities: string,
  order: number,
  createdAt: Date,
  updatedAt: Date
}

Skills

{
  _id: ObjectId,
  cvId: ObjectId (indexed),
  name: string,
  category: enum ['technical', 'soft', 'language', 'other'],
  proficiencyLevel: number (1-10),
  yearsOfExperience: number,
  order: number,
  createdAt: Date,
  updatedAt: Date
}

Templates

{
  _id: ObjectId,
  name: string,
  category: string,
  style: enum ['modern', 'classic', 'creative', 'minimalist', 'executive'],
  tier: enum ['free', 'premium'],
  previewImage: string,
  htmlTemplate: string,
  defaultSettings: object,
  isActive: boolean,
  popularity: number,
  createdAt: Date,
  updatedAt: Date
}

Applications (Professional tier)

{
  _id: ObjectId,
  userId: ObjectId (indexed),
  cvId: ObjectId,
  jobTitle: string,
  company: string,
  jobUrl: string,
  appliedDate: Date,
  status: enum ['applied', 'reviewing', 'interview', 'offer', 'rejected'],
  notes: string,
  followUpDate: Date,
  createdAt: Date,
  updatedAt: Date
}

Analytics

{
  _id: ObjectId,
  cvId: ObjectId (indexed),
  eventType: enum ['view', 'download', 'share'],
  metadata: object,
  timestamp: Date
}

πŸ”Œ API Endpoints Structure

Authentication

POST   /auth/register
POST   /auth/login
POST   /auth/refresh-token
POST   /auth/logout
POST   /auth/verify-email
POST   /auth/forgot-password
POST   /auth/reset-password
GET    /auth/google (OAuth)
GET    /auth/linkedin (OAuth)

User Profile

GET    /users/profile
PATCH  /users/profile
POST   /users/profile/photo
DELETE /users/profile/photo
PATCH  /users/password
DELETE /users/account

CV Management

GET    /cvs
POST   /cvs
GET    /cvs/:id
PATCH  /cvs/:id
DELETE /cvs/:id
POST   /cvs/:id/duplicate
GET    /cvs/:id/preview
POST   /cvs/:id/share

Work Experience

GET    /cvs/:cvId/work-experience
POST   /cvs/:cvId/work-experience
GET    /work-experience/:id
PATCH  /work-experience/:id
DELETE /work-experience/:id
POST   /work-experience/:id/ai-enhance

Education

GET    /cvs/:cvId/education
POST   /cvs/:cvId/education
GET    /education/:id
PATCH  /education/:id
DELETE /education/:id

Skills

GET    /cvs/:cvId/skills
POST   /cvs/:cvId/skills
PATCH  /skills/:id
DELETE /skills/:id
POST   /cvs/:cvId/skills/recommend

Templates

GET    /templates
GET    /templates/:id
GET    /templates/categories
GET    /templates/premium

AI Services

POST   /ai/generate-description
POST   /ai/enhance-content
POST   /ai/analyze-job
POST   /ai/ats-score
POST   /ai/generate-cover-letter
POST   /ai/skill-recommendations

Export

POST   /export/pdf
POST   /export/word
POST   /export/html
GET    /export/:id/download

Analytics (Professional)

GET    /analytics/cvs/:id/stats
GET    /analytics/user/overview
GET    /analytics/cvs/:id/views

Applications (Professional)

GET    /applications
POST   /applications
PATCH  /applications/:id
DELETE /applications/:id

Payments

GET    /payments/plans
POST   /payments/checkout
POST   /payments/webhook
GET    /payments/subscription
POST   /payments/cancel
POST   /payments/upgrade

🎨 Frontend Considerations

Key Pages

  1. Landing Page: Marketing, pricing, features showcase
  2. Dashboard: CV list, quick actions, analytics overview
  3. CV Builder: Interactive editor with live preview
  4. Template Gallery: Filterable template showcase
  5. Settings: Account, billing, preferences
  6. Export Center: Download management
  7. Application Tracker (Professional): Job application pipeline

UI/UX Priorities

  • Drag-and-drop section reordering
  • Real-time preview updates
  • Auto-save functionality
  • Mobile-responsive design
  • Keyboard shortcuts for power users
  • Undo/redo functionality
  • Template preview comparison
  • Progressive disclosure of advanced features

πŸ’° Monetization Strategy

Pricing Tiers

Free Plan - $0/month

  • 1 CV
  • 2 basic templates
  • Limited exports (1/month with watermark)
  • Basic sections only

Premium Plan - $12.99/month or $99/year (save 36%)

  • Unlimited CVs
  • All premium templates (20+)
  • Unlimited exports (all formats)
  • AI content generation
  • ATS optimization
  • Custom branding removal
  • Priority email support

Professional Plan - $24.99/month or $199/year (save 33%)

  • All Premium features
  • Cover letter generator
  • Application tracker
  • Advanced analytics
  • Collaboration features
  • Interview prep tools
  • Career insights
  • 1-on-1 career consultation (quarterly)
  • Priority chat support

Enterprise - Custom pricing

  • White-label solution
  • API access
  • Bulk user management
  • Custom integrations
  • Dedicated account manager
  • SLA guarantees

Additional Revenue Streams

  • One-time template purchases ($4.99 each)
  • Professional CV review service ($49-$99)
  • One-on-one career coaching ($99/session)
  • Resume writing service ($199-$499)

πŸš€ Launch Roadmap

Phase 1: MVP (Months 1-3)

  • Core CV builder functionality
  • Authentication system
  • 5 basic templates
  • PDF export
  • Basic AI content generation
  • Free tier only

Phase 2: Monetization (Months 4-5)

  • Premium templates
  • Payment integration
  • Premium/Free tier differentiation
  • Enhanced AI features
  • ATS optimization

Phase 3: Professional Features (Months 6-8)

  • Application tracker
  • Analytics dashboard
  • Cover letter generator
  • Collaboration features
  • Mobile app (React Native)

Phase 4: Scale & Optimize (Months 9-12)

  • Enterprise features
  • API for partners
  • Performance optimization
  • International expansion
  • Marketing automation

πŸ” Security & Compliance

  • Data Encryption: At rest and in transit (AES-256)
  • GDPR Compliance: Data export, deletion, consent management
  • SOC 2 Type II: Security audit certification
  • Regular Backups: Automated daily backups with 30-day retention
  • Rate Limiting: API protection against abuse
  • Input Sanitization: XSS and injection prevention
  • Secure File Upload: Virus scanning and validation

πŸ“ˆ Success Metrics

Key Performance Indicators

  • Monthly Active Users (MAU)
  • Conversion rate (Free β†’ Premium)
  • Average revenue per user (ARPU)
  • Customer lifetime value (LTV)
  • Churn rate
  • CV completion rate
  • Export frequency
  • AI feature usage rate
  • ATS score improvement average

πŸ› οΈ Development Stack Summary

Backend

  • NestJS (TypeScript)
  • MongoDB + Mongoose
  • JWT Authentication
  • OpenAI API / Anthropic Claude
  • Stripe API
  • AWS S3 / Azure Blob
  • Puppeteer (PDF generation)

Frontend (Recommended)

  • React 18+ with TypeScript
  • Next.js for SSR/SEO
  • TailwindCSS for styling
  • Zustand/Redux for state management
  • React Query for data fetching
  • Draft.js / Slate.js for rich text editing

DevOps

  • Docker containerization
  • GitHub Actions CI/CD
  • AWS/Azure/GCP hosting
  • Nginx reverse proxy
  • Redis for caching
  • MongoDB Atlas

🎯 Competitive Advantages

  1. AI-First Approach: Deep integration of AI throughout the user journey
  2. ATS Optimization: Focus on applicant tracking system compatibility
  3. Job-Specific Tailoring: Unique ability to customize CVs for specific positions
  4. Modern Tech Stack: Fast, scalable, maintainable codebase
  5. Comprehensive Analytics: Data-driven insights for users
  6. Fair Pricing: Competitive pricing with clear value proposition
  7. Career Ecosystem: Beyond CV building - full job search support

πŸ“ Implementation Notes

Existing Backend Implementation Status

βœ… Completed

  • Authentication & Security (JWT, password hashing, email verification)
  • User Management (profiles, photos, settings)
  • Work Experience CRUD operations
  • Education CRUD operations
  • Skills Management with categorization
  • Template System with premium/free tiers
  • File Management with validation
  • Database schema with Mongoose/TypeORM
  • Global exception handling
  • Input validation with class-validator

πŸ”„ In Progress / To Be Enhanced

  • AI integration endpoints (framework ready)
  • Export functionality (PDF, Word, HTML)
  • Analytics module
  • Payment integration
  • Application tracking
  • Collaboration features

Next Development Priorities

  1. AI Services Integration

    • Connect OpenAI/Claude API
    • Implement content generation algorithms
    • Build ATS scoring system
    • Create job description analyzer
  2. Export Module

    • PDF generation with Puppeteer
    • Word document creation
    • Template rendering engine
    • Watermark management
  3. Payment System

    • Stripe integration
    • Subscription management
    • Webhook handlers
    • Tier enforcement middleware
  4. Frontend Development

    • React-based CV builder UI
    • Template preview system
    • Real-time editing interface
    • Dashboard and analytics views

🀝 Contributing

This project follows standard Git workflow:

  1. Fork the repository
  2. Create feature branches
  3. Submit pull requests
  4. Follow TypeScript and ESLint standards
  5. Write tests for new features

About

A one-of-a-kind resume builder that keeps your privacy in mind. Completely secure, customizable, portable, open-source and free forever. Try it out today!

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors