Skip to content

Share buttons component missing aria-label attributes #3074

@sykp241095

Description

@sykp241095

Accessibility Issue: ShareButtons Component Missing aria-label

Problem

The ShareButtons component in apps/web/components/ShareButtons.tsx uses only title attributes for social media share buttons, which is not sufficient for screen readers.

Affected Elements

  1. Native share button (line 83) - only has title="Share"
  2. Twitter/X link (line 96) - only has title="Share on X"
  3. Hacker News link (line 109) - only has title="Share on Hacker News"
  4. LinkedIn link (line 122) - only has title="Share on LinkedIn"
  5. Reddit link (line 135) - only has title="Share on Reddit"
  6. Copy link button (line 129) - only has dynamic title

Impact

Users relying on screen readers may not receive clear, consistent information about the purpose of these share buttons. The title attribute is not reliably announced by all screen readers.

Suggested Fix

Add aria-label attributes to all interactive elements:

// Example for native share button
<button
  onClick={nativeShare}
  className={buttonClass}
  title="Share"
  aria-label="Share this page"
>

// Example for Twitter link
<a
  href={twitterUrl}
  target="_blank"
  rel="noopener noreferrer"
  className={buttonClass}
  title="Share on X"
  aria-label="Share on X"
>

Related Issues

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions