Skip to content

feat: add ShareProfileButton to dashboard for copying public profile …#2514

Open
Bhavy12-cell wants to merge 1 commit into
Umbrella-io:mainfrom
Bhavy12-cell:feat/copy-profile-link-2448
Open

feat: add ShareProfileButton to dashboard for copying public profile …#2514
Bhavy12-cell wants to merge 1 commit into
Umbrella-io:mainfrom
Bhavy12-cell:feat/copy-profile-link-2448

Conversation

@Bhavy12-cell

@Bhavy12-cell Bhavy12-cell commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

Summary

Closes #2448

Problem

Users had no quick way to copy their public profile URL from the
dashboard. They had to manually find or construct the URL.

Solution

Created a new ShareProfileButton component and placed it next to
the existing Share Profile link in the dashboard header.

Modified Files

  • src/components/DashboardHeader.tsx
    • Added import for ShareProfileButton
    • Placed ShareProfileButton next to the Share Profile link
      in both desktop and mobile layouts

Checklist

  • ✅ ShareProfileButton.tsx component created
  • ✅ Button placed in dashboard header near avatar
  • ✅ Clipboard copy works with success toast
  • ✅ Error fallback handled with destructive toast
  • ✅ Icon switches Link2 → Check for 2s after copy
  • ✅ No new dependencies — uses lucide-react and sonner already in project
  • ✅ Works in both desktop and mobile layouts

@github-actions github-actions Bot added gssoc26 GSSoC 2026 contribution type:feature GSSoC type bonus: new feature labels Jun 17, 2026
@github-actions github-actions Bot added type:bug GSSoC type bonus: bug fix type:design GSSoC type bonus: UI/design (+10 pts) type:performance GSSoC type bonus: performance (+15 pts) labels Jun 17, 2026
@github-actions

Copy link
Copy Markdown

GSSoC Label Checklist 🏷️

@Umbrella-io — please apply the appropriate labels before merging:

Difficulty (pick one):

  • level:beginner — 20 pts
  • level:intermediate — 35 pts
  • level:advanced — 55 pts
  • level:critical — 80 pts

Quality (optional):

  • quality:clean — ×1.2 multiplier
  • quality:exceptional — ×1.5 multiplier

Validation (required to score):

  • gssoc:approved — counts for points
  • gssoc:invalid / gssoc:spam / gssoc:ai-slop — does not score

Type labels (type:*) are auto-detected from files and title. Review and adjust if needed.
Points formula: (difficulty × quality_multiplier) + type_bonus

@Priyanshu-byte-coder

Copy link
Copy Markdown
Member

This PR has merge conflicts with main. Please rebase or resolve conflicts and push again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gssoc26 GSSoC 2026 contribution type:bug GSSoC type bonus: bug fix type:design GSSoC type bonus: UI/design (+10 pts) type:feature GSSoC type bonus: new feature type:performance GSSoC type bonus: performance (+15 pts)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEAT] Add "copy profile link" button to dashboard for sharing public profile URL

2 participants