Skip to content

Repository files navigation

🚀 Modern Resume Builder Application

A futuristic, fully responsive Flask web application that allows users to create professional resumes with a modern design. Generate beautiful resumes with all essential sections and download them as PDF files.

✨ Features

  • Modern & Futuristic UI: Sleek gradient design with smooth animations
  • Fully Responsive: Works perfectly on desktop, tablet, and mobile devices
  • Dynamic Form Sections: Add/remove multiple entries for experience, education, skills, projects, and certifications
  • Real-time Resume Preview: See your resume as you fill the form
  • PDF Export: Download your resume as a high-quality PDF file
  • Auto-Save: Form data is automatically saved to browser's local storage
  • Clean Code Structure: Modular and easily extensible code

📋 Resume Sections

The application supports the following resume sections:

  1. Personal Information

    • Full Name, Email, Phone
    • Location, LinkedIn Profile, GitHub Profile
    • Portfolio Website
  2. Professional Summary

    • Brief professional overview
  3. Technical Skills

    • Multiple skill categories with comma-separated items
    • E.g., Languages, Frameworks, Tools, Databases, etc.
  4. Professional Experience

    • Company, Job Title, Location
    • Start and End Dates
    • Responsibilities and Achievements (bullet points)
  5. Education

    • Degree, University/Institution
    • Graduation Year, CGPA/GPA
  6. Projects

    • Project Title, Description
    • Technology Stack
  7. Certifications & Workshops

    • Certification Name, Issuing Organization
    • Date Obtained

🛠️ Technology Stack

  • Backend: Flask (Python)
  • Frontend: HTML5, CSS3, JavaScript
  • PDF Generation: html2pdf.js (client-side)
  • Storage: Browser Local Storage (auto-save)
  • Design: Modern CSS with animations and gradients

📦 Installation & Setup

Prerequisites

  • Python 3.7+
  • pip (Python package manager)

Steps

  1. Navigate to the project directory

    cd ResumeBuilder
  2. Install dependencies

    pip install -r requirements.txt
  3. Run the Flask application

    python app.py
  4. Open in browser

    • Go to http://localhost:5000 in your web browser
    • The app will automatically reload on changes (debug mode enabled)

🎯 How to Use

  1. Fill the Form

    • Enter your personal information
    • Add your professional summary
    • Add one or more skill categories
    • Add professional experiences
    • Add education details
    • Add projects you've worked on
    • Add certifications and workshops
  2. Add/Remove Sections

    • Click "+ Add [Section]" to add more entries
    • Click "✕ Remove" to remove any entry
  3. Generate Resume

    • Click "Generate Resume" button
    • Your resume will appear in a preview modal
  4. Download PDF

    • In the preview modal, click "📥 Download PDF"
    • Your resume will be downloaded as a PDF file
  5. Close Preview

    • Click "Close" or click outside the modal

📁 Project Structure

ResumeBuilder/
├── app.py                          # Flask application
├── requirements.txt                # Python dependencies
├── templates/
│   └── index.html                  # Main form template
├── static/
│   ├── css/
│   │   └── style.css              # Modern & responsive styling
│   └── js/
│       └── script.js              # Form handling & PDF export

🎨 Design Features

Responsive Breakpoints

  • Desktop: Full-featured layout with multiple columns
  • Tablet: Optimized 2-column grids
  • Mobile: Single-column layout for easy scrolling

Color Scheme

  • Primary Gradient: #667eea to #764ba2 (Purple-Blue)
  • Accent Colors: #ff6b6b (Red), #667eea (Blue)
  • Background: White with subtle shadows
  • Text: Dark gray (#333) on light backgrounds

Animations

  • Fade-in animations on page load
  • Smooth transitions on hover effects
  • Slide-up animation for form submission
  • Floating background pattern in header

💾 Auto-Save Feature

The application automatically saves your form data to the browser's local storage:

  • Saves every 10 seconds
  • Saves on every form input change
  • Data persists even after closing the browser
  • Click "Clear Form" to reset all data

📱 Mobile-Friendly Features

  • Touch-friendly button sizes
  • Optimized input field layouts
  • Full-screen modal for resume preview
  • Horizontal scrolling for wide tables (if any)
  • Responsive images and spacing

🔒 Security Notes

  • All data processing happens on the client-side
  • No server-side data storage (unless you add it)
  • HTML special characters are escaped to prevent XSS
  • Uses https for external libraries (html2pdf.js)

🚀 Future Enhancements

Potential features that can be added:

  1. Server-side Storage: Save resumes to a database
  2. User Authentication: Create accounts and manage multiple resumes
  3. Template Selection: Multiple resume design templates
  4. Rich Text Editor: For more formatting options
  5. Image Upload: Add profile picture to resume
  6. Real-time Collab: Share and edit resumes together
  7. Analytics: Track resume downloads and views
  8. ATS Optimization: Ensure resume is ATS-friendly

🐛 Troubleshooting

Issue: Flask app won't start

Solution: Make sure Python 3.7+ is installed and all dependencies are installed via pip install -r requirements.txt

Issue: Styles not loading

Solution: Clear browser cache (Ctrl+Shift+Delete) or use incognito mode

Issue: PDF download not working

Solution: Make sure JavaScript is enabled and html2pdf.js library loads (check browser console)

Issue: Form data not saving

Solution: Check if local storage is enabled in your browser settings

📄 License

This project is free to use and modify for personal and professional purposes.

👨‍💻 Author

Created as a modern resume builder application for generating professional resumes with ease.

📞 Support

For issues or feature requests, you can:

  1. Check the troubleshooting section above
  2. Review the code comments in the files
  3. Test with a fresh browser cache

Enjoy building your professional resume! 🎉

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages