Skip to content

๐Ÿท๏ธ [GSSoC26] Feature: Drag-and-Drop Section Reordering in Resume Builderย #68

@priya05-git

Description

@priya05-git

๐Ÿ“Œ Issue Type

โœจ Feature Request | ๐Ÿง‘โ€๐Ÿ’ป Good First / Intermediate Issue

๐Ÿš€ Description

The current resume builder uses a fixed section order (e.g., Personal Info โ†’ Experience โ†’ Education โ†’ Skills โ†’ Projects). Users cannot customize the layout based on job role or preference.

This feature proposes adding drag-and-drop functionality so users can reorder resume sections dynamically.

๐ŸŽฏ Goal

Enable users to personalize their resume structure by rearranging sections using drag-and-drop, with changes reflected in preview and exported PDF.

๐Ÿ’ก Proposed Solution

Implement a draggable UI for resume sections:

Users can drag sections up/down in the builder
Real-time visual feedback during dragging
Updated order reflected immediately in preview
Persist layout after refresh (localStorage or backend)

๐Ÿงฑ Technical Approach
Use a drag-and-drop library:
Recommended: dnd-kit
Alternative: react-beautiful-dnd

Maintain section order in state:

const [sectionOrder, setSectionOrder] = useState([
"personalInfo",
"experience",
"education",
"projects",
"skills"
]);

Save order to:
localStorage (initial implementation)
Optional backend profile storage (enhancement)

๐Ÿ–ฅ๏ธ UI Requirements
Drag handle icon (โ˜ฐ or โ‹ฎโ‹ฎ) on each section
Smooth animations while dragging
Drop placeholder indicator
Mobile-friendly support (optional up/down buttons fallback)

๐Ÿ“ฑ Expected Behavior
User drags a section โ†’ position updates instantly
Preview updates in real time
Refreshing the page retains custom order

โœ… Acceptance Criteria
Sections can be reordered via drag-and-drop
Order updates in live preview
Order persists after page reload
No UI breaking during drag operations
Works on desktop and mobile

โญ Optional Enhancements
Reset to default layout button
Role-based templates (Fresher / Developer / Manager)
Save multiple custom layouts per user
โ€œAuto-suggest best orderโ€ using AI

๐Ÿ“ˆ Impact
Improves user customization
Enhances resume quality for different job roles

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions