An interactive and feature-rich resume builder that empowers users to craft professional resumes with ease. Offers a variety of templates, customizable sections, drag-and-drop functionality, and real-time editing.
-
Multiple Templates – Choose from elegant, double-column, timeline, and other modern templates
-
Drag-and-Drop Interface – Intuitively rearrange resume sections
-
Real-Time Editing – Instantly preview changes as you type
-
Customizable Sections – Add, remove, or tweak sections such as:
- Education
- Work Experience
- Skills
- Languages
- Achievements
- Custom Sections
-
PDF Export – Download your resume as a polished PDF
-
Responsive Design – Fully functional on desktop and tablet
-
Undo/Redo – Maintain full edit history with undo/redo support
-
Photo Upload – Option to add a professional headshot
- Node.js v16.x or higher
- npm or Yarn
# Clone the repository
git clone https://github.com/coderomm/Enhance-CV.git
cd resume-builder
# Install dependencies
npm install
# or
yarn install
# Start the development server
npm run dev
# or
yarn dev
Visit http://localhost:3000
in your browser to get started.
- A sample resume is preloaded when you open the app
- Click on any section to begin editing
- Use the sidebar to add sections, switch templates, or download your resume
- Click directly on text to edit
- Use the floating toolbar to add entries or tweak settings
- Right-click entries for additional options like visibility controls
- Click "Rearrange" in the sidebar
- Drag and drop to reorder
- Click "Continue Editing" to apply changes
- Open the "Templates" tab in the sidebar
- Preview available templates
- Click "Apply Template" to use the selected one
- Click "Download" in the sidebar
- The resume will be exported as a PDF
- Filename is auto-generated using your name (e.g.,
john_doe_resume.pdf
)
Built with a modern React architecture powered by Next.js and Redux.
- ResumeBuilder – Central app logic and layout
- Sidebar – Tools for resume management and actions
- ResumeTemplates – Elegant, double-column, and timeline template components
- ResumeSection – Dynamically renders different resume sections
- EditableText – Inline content editor for seamless text updates
resumeSlice
– Manages resume data and sectionssettingsSlice
– Handles template choice and UI settingsuiSlice
– Controls modals, loading, and general UI state
A dedicated module:
- Captures the resume DOM
- Processes it for accurate rendering
- Generates a downloadable PDF
- Next.js – Fullstack React framework
- TypeScript – Type-safe development
- Redux Toolkit – Scalable state management
- Tailwind CSS – Utility-first CSS styling
- shadcn/ui – Beautiful component library
- hello-pangea/dnd – For drag-and-drop functionality
- html2canvas & jsPDF – For PDF generation
- Framer Motion – Smooth animations and transitions
resume-builder/
├── app/ # Next.js app directory
├── components/ # React components
│ ├── ui/ # shadcn UI components
│ ├── resume-*.tsx # Resume-specific components
│ └── ...
├── lib/ # Utilities and Redux store
│ ├── features/ # Redux slices
│ ├── pdf-export.ts # PDF generation module
│ ├── store.ts # Redux store config
│ └── types.ts # Type definitions
├── public/ # Static assets
│ └── templates/ # Template thumbnails
└── ...
We welcome contributions!
-
Fork the repository
-
Create your feature branch
git checkout -b feature/amazing-feature
-
Commit your changes
git commit -m "Add amazing feature"
-
Push your branch
git push origin feature/amazing-feature
-
Open a Pull Request
Licensed under the MIT License.
- shadcn/ui for components
- hello-pangea/dnd for drag-and-drop
- html2canvas & jsPDF for PDF export
Built with ❤️ by [Om Sharma]