Skip to content

Conversation

Shitanshukumar607
Copy link
Contributor

Description

Add share functioanlity in /podcasts
Fixes #588

Type of Change

  • New feature (e.g., new page, component, or functionality)
  • Bug fix (non-breaking change that fixes an issue)
  • UI/UX improvement (design, layout, or styling updates)
  • Performance optimization (e.g., code splitting, caching)
  • Documentation update (README, contribution guidelines, etc.)
  • Other (please specify):

Changes Made

Dependencies

  • List any new dependencies or tools required for this change.
  • Mention any version updates or configurations that need to be considered.

Checklist

  • My code follows the style guidelines of this project.
  • I have tested my changes across major browsers and devices
  • My changes do not generate new console warnings or errors .
  • I ran npm run build and attached screenshot(s) in this PR.
  • This is already assigned Issue to me, not an unassigned issue.

@Copilot Copilot AI review requested due to automatic review settings September 23, 2025 19:36
Copy link

Thank you for submitting your pull request! 🙌 We'll review it as soon as possible. The estimated time for response is 5–8 hrs.

In the meantime, please provide all necessary screenshots and make sure you run - npm build run , command and provide a screenshot, a video recording, or an image of the update you made below, which helps speed up the review and assignment. If you have questions, reach out to LinkedIn. Your contributions are highly appreciated!😊

Note: I maintain the repo issue every day twice at 8:00 AM IST and 9:00 PM IST. If your PR goes stale for more than one day, you can tag and comment on this same issue by tagging @sanjay-kv.

We are here to help you on this journey of open source. Consistent 20 contributions are eligible for sponsorship 💰

🎁 check our list of amazing people we sponsored so far: GitHub Sponsorship. ✨

📚Your perks for contribution to this community 👇🏻

  1. Get free Consultation use code recode50 to get free: Mentorship for free.

  2. Get the Ebook for free use code recode at checkout: Data Science cheatsheet for Beginners.

  3. Check out this weekly Newsletter: Sanjay's Newsletter.

If there are any specific instructions or feedback regarding your PR, we'll provide them here. Thanks again for your contribution! 😊

Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds share functionality to the podcasts page, allowing users to share podcast links through the native Web Share API or clipboard fallback.

  • Implements a new handleShare function that utilizes the Web Share API when available
  • Adds click event handling to the existing share button to trigger the sharing functionality
  • Provides clipboard fallback for browsers that don't support the Web Share API

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment on lines +130 to +133
} catch (err) {
// Fallback to clipboard
navigator.clipboard.writeText(podcast.spotifyUrl);
}
Copy link

Copilot AI Sep 23, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The clipboard fallback in the catch block should handle potential clipboard API failures. The clipboard.writeText() method can also throw errors if clipboard access is denied or unavailable.

Copilot uses AI. Check for mistakes.

Comment on lines +134 to +136
} else {
navigator.clipboard.writeText(podcast.spotifyUrl);
}
Copy link

Copilot AI Sep 23, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This clipboard operation should be wrapped in a try-catch block to handle cases where clipboard access is denied or the API is unavailable.

Copilot uses AI. Check for mistakes.

Copy link

vercel bot commented Sep 23, 2025

@Shitanshukumar607 is attempting to deploy a commit to the recode Team on Vercel.

A member of the Team first needs to authorize it.

@Copilot Copilot AI review requested due to automatic review settings September 23, 2025 19:49
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 2 comments.


Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment on lines +132 to +135
navigator.clipboard.writeText(podcast.spotifyUrl);
}
} else {
navigator.clipboard.writeText(podcast.spotifyUrl);
Copy link

Copilot AI Sep 23, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The catch block silently handles errors without informing the user. Consider adding user feedback (e.g., toast notification) when the Web Share API fails and fallback to clipboard is used, or when clipboard operations fail.

Suggested change
navigator.clipboard.writeText(podcast.spotifyUrl);
}
} else {
navigator.clipboard.writeText(podcast.spotifyUrl);
try {
await navigator.clipboard.writeText(podcast.spotifyUrl);
alert('Sharing failed. Link copied to clipboard instead.');
} catch (clipboardErr) {
alert('Sharing failed and copying to clipboard also failed.');
}
}
} else {
try {
await navigator.clipboard.writeText(podcast.spotifyUrl);
alert('Link copied to clipboard.');
} catch (clipboardErr) {
alert('Copying to clipboard failed.');
}

Copilot uses AI. Check for mistakes.

Comment on lines +132 to +135
navigator.clipboard.writeText(podcast.spotifyUrl);
}
} else {
navigator.clipboard.writeText(podcast.spotifyUrl);
Copy link

Copilot AI Sep 23, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The clipboard operation lacks error handling. The writeText method can fail (e.g., when clipboard permissions are denied) and should be wrapped in a try-catch block with appropriate user feedback.

Suggested change
navigator.clipboard.writeText(podcast.spotifyUrl);
}
} else {
navigator.clipboard.writeText(podcast.spotifyUrl);
try {
await navigator.clipboard.writeText(podcast.spotifyUrl);
alert('Podcast link copied to clipboard!');
} catch (clipboardErr) {
alert('Failed to copy podcast link to clipboard.');
}
}
} else {
try {
await navigator.clipboard.writeText(podcast.spotifyUrl);
alert('Podcast link copied to clipboard!');
} catch (clipboardErr) {
alert('Failed to copy podcast link to clipboard.');
}

Copilot uses AI. Check for mistakes.

@iitzIrFan iitzIrFan added gssoc25 level 2 30 points under review Review under the maintainers or the admins Ready for Merge PR has passed reviews and checks, and is ready to be merged into the main branch. labels Sep 23, 2025
@iitzIrFan iitzIrFan moved this to In Progress in @recode-web Sep 23, 2025
Copy link
Member

@iitzIrFan iitzIrFan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM ! @Shitanshukumar607 Thanks for PR :)
@sanjay-kv Ready for merge.

@iitzIrFan iitzIrFan removed the under review Review under the maintainers or the admins label Sep 23, 2025
@sanjay-kv sanjay-kv added this to the recode:launch 3.0 milestone Sep 24, 2025
Copy link

vercel bot commented Sep 24, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
recode-website Ready Ready Preview Comment Sep 24, 2025 10:26am

@sanjay-kv sanjay-kv merged commit 75acc9c into recodehive:main Sep 24, 2025
5 checks passed
@github-project-automation github-project-automation bot moved this from In Progress to Done in @recode-web Sep 24, 2025
@Shitanshukumar607 Shitanshukumar607 deleted the share-button-podcast branch September 24, 2025 10:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gssoc25 level 2 30 points Ready for Merge PR has passed reviews and checks, and is ready to be merged into the main branch.

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Share button doesnt work

3 participants