Skip to content

The AI Resume Builder is a modern web application built with React that helps users create, customize, and export professional resumes effortlessly.

Notifications You must be signed in to change notification settings

03musab/Resume-Builder-main

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🧠 AI-Powered Resume Builder

The AI Resume Builder is a modern web application built with React that helps users create, customize, and export professional resumes effortlessly. With a clean interface and AI-assisted features, users can generate impactful resumes in minutes.

Resume Builder Demo

πŸš€ Key Features

  • πŸ€– AI Suggestions: Smart recommendations for resume content and layout optimization
  • 🎨 Drag & Drop Interface: Intuitive resume editing experience with real-time preview
  • πŸ“± Responsive Design: Mobile-friendly and visually clean layout using Bootstrap and React Bootstrap
  • πŸ“„ PDF Export: Seamlessly export resumes using react-to-print with professional formatting
  • πŸ” User Authentication: Secure login and data handling via Firebase Authentication
  • 🧭 Navigation: Smooth transitions between sections using React Router
  • βœ… Testing Ready: Built with Jest and React Testing Library for reliability
  • πŸ’Ύ Auto-Save: Automatic saving of resume progress to prevent data loss

πŸ› οΈ Tech Stack

Technology Purpose Version
React Core frontend framework ^18.0.0
Bootstrap Responsive styling ^5.3.0
React Bootstrap React components for Bootstrap ^2.8.0
React Router Routing and navigation ^6.0.0
Firebase Authentication / backend services ^9.0.0
React To Print Resume export to PDF ^1.14.0
Jest + RTL Unit and UI testing Latest

πŸ“ Project Structure

resume-builder/
β”œβ”€β”€ public/                     # Static files
β”‚   β”œβ”€β”€ index.html
β”‚   β”œβ”€β”€ favicon.ico
β”‚   └── manifest.json
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ assets/                 # Images, icons, and static resources
β”‚   β”‚   β”œβ”€β”€ images/
β”‚   β”‚   └── icons/
β”‚   β”œβ”€β”€ components/             # Reusable UI components
β”‚   β”‚   β”œβ”€β”€ Header/
β”‚   β”‚   β”œβ”€β”€ Footer/
β”‚   β”‚   β”œβ”€β”€ ResumePreview/
β”‚   β”‚   β”œβ”€β”€ FormSections/
β”‚   β”‚   └── common/
β”‚   β”œβ”€β”€ context/                # Global state management
β”‚   β”‚   β”œβ”€β”€ AuthContext.js
β”‚   β”‚   └── ResumeContext.js
β”‚   β”œβ”€β”€ pages/                  # App pages
β”‚   β”‚   β”œβ”€β”€ Home/
β”‚   β”‚   β”œβ”€β”€ Editor/
β”‚   β”‚   β”œβ”€β”€ Login/
β”‚   β”‚   β”œβ”€β”€ Register/
β”‚   β”‚   └── Dashboard/
β”‚   β”œβ”€β”€ styles/                 # Custom CSS/SASS
β”‚   β”‚   β”œβ”€β”€ globals.css
β”‚   β”‚   └── components/
β”‚   β”œβ”€β”€ utils/                  # Helper functions
β”‚   β”‚   β”œβ”€β”€ resumeHelpers.js
β”‚   β”‚   └── aiSuggestions.js
β”‚   β”œβ”€β”€ hooks/                  # Custom React hooks
β”‚   β”œβ”€β”€ services/               # API and external services
β”‚   β”‚   β”œβ”€β”€ firebase.js
β”‚   β”‚   └── aiService.js
β”‚   β”œβ”€β”€ App.js                  # Main app component
β”‚   β”œβ”€β”€ App.css
β”‚   └── index.js                # Entry point
β”œβ”€β”€ package.json
β”œβ”€β”€ README.md
└── .env.example                # Environment variables template

βš™οΈ Getting Started

Prerequisites

  • Node.js (v16+ recommended)
  • npm or yarn package manager
  • Firebase project (for authentication & optional storage)

Installation

  1. Clone the Repository

    git clone https://github.com/your-username/ai-resume-builder.git
    cd ai-resume-builder
  2. Install Dependencies

    npm install
    # or
    yarn install
  3. Environment Setup

    cp .env.example .env.local

    Fill in your environment variables:

    REACT_APP_FIREBASE_API_KEY=your_api_key
    REACT_APP_FIREBASE_AUTH_DOMAIN=your_project.firebaseapp.com
    REACT_APP_FIREBASE_PROJECT_ID=your_project_id
    REACT_APP_FIREBASE_STORAGE_BUCKET=your_project.appspot.com
    REACT_APP_FIREBASE_MESSAGING_SENDER_ID=your_sender_id
    REACT_APP_FIREBASE_APP_ID=your_app_id
  4. Set up Firebase

    • Create a new Firebase project at Firebase Console
    • Enable Authentication (Email/Password, Google, etc.)
    • Enable Firestore Database (optional, for saving resumes)
    • Add your web app configuration to the .env.local file
  5. Start the Development Server

    npm start
    # or
    yarn start

The app will open at http://localhost:3000

πŸ§ͺ Testing

Run the test suite:

npm test
# or
yarn test

Run tests with coverage:

npm test -- --coverage

πŸ“¦ Build for Production

Create an optimized production build:

npm run build
# or
yarn build

The build files will be generated in the build/ directory.

πŸš€ Deployment Options

Firebase Hosting

npm install -g firebase-tools
firebase login
firebase init hosting
firebase deploy

Vercel

npm install -g vercel
vercel

Netlify

  1. Connect your GitHub repository to Netlify
  2. Set build command: npm run build
  3. Set publish directory: build

GitHub Pages

npm install --save-dev gh-pages
# Add to package.json scripts:
# "predeploy": "npm run build",
# "deploy": "gh-pages -d build"
npm run deploy

🀝 Contributing

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

πŸ“ API Documentation

Firebase Authentication

  • /login - User authentication
  • /register - User registration
  • /logout - User logout

Resume Data Structure

{
  id: "unique_id",
  userId: "user_id",
  personalInfo: {
    name: "John Doe",
    email: "john@example.com",
    phone: "+1234567890",
    location: "City, Country"
  },
  sections: {
    experience: [...],
    education: [...],
    skills: [...],
    projects: [...]
  },
  template: "modern",
  createdAt: "timestamp",
  updatedAt: "timestamp"
}

πŸ› Known Issues

  • PDF export may not preserve custom fonts in some browsers
  • Mobile drag & drop functionality is limited on older devices
  • AI suggestions require internet connection

πŸ“‹ Roadmap

  • Multiple resume templates
  • LinkedIn profile import
  • Advanced AI content suggestions
  • Collaborative resume editing
  • Resume analytics and optimization tips
  • Integration with job boards
  • Multi-language support

πŸ“œ License

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

⚠️ Security Notice

  • Never commit your Firebase API keys or sensitive information to version control
  • Always use environment variables for configuration
  • Enable Firebase security rules for production deployment

πŸ†˜ Support

If you encounter any issues or have questions:

  1. Check the Issues page
  2. Create a new issue with detailed information
  3. Join our Discord community for real-time help

πŸ™ Acknowledgments

  • React community for excellent documentation
  • Firebase team for seamless backend services
  • Bootstrap team for responsive design components
  • All contributors who helped improve this project

✨ AI Resume Builder β€” Your smarter way to craft the perfect resume.

Made with React Firebase Bootstrap

⭐ Star this repository if you found it helpful!

About

The AI Resume Builder is a modern web application built with React that helps users create, customize, and export professional resumes effortlessly.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published