Launch Week Day 1: Socket for Jira Is Now Available.Learn More
Socket
Book a DemoSign in
Socket

browserux-share-button

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

browserux-share-button

A smart, customizable Web Component for sharing content via Web Share API with graceful fallback.

latest
Source
npmnpm
Version
1.1.1
Version published
Weekly downloads
168
52.73%
Maintainers
1
Weekly downloads
 
Created
Source

EN | FR

logo BrowserUX Share Button

BrowserUX Share Button

A modern solution to enable seamless content sharing across all devices and platforms.

BrowserUX Share Button is a lightweight, accessible, and customizable Web Component that simplifies sharing URLs via the native Web Share API, when available, or a responsive fallback modal. It supports multiple platforms (Email, X, WhatsApp, etc.), automatically retrieves share metadata, and offers full localization, visual customization, and framework compatibility.


npm version unpkg

Features

  • 📱 Uses the native Web Share API when available (mobile, PWA)
  • 🗂 Falls back to a rich modal with platform links on desktop
  • 🔗 Copy-to-clipboard button with app icon, title, and URL preview
  • 🌐 8 built-in platforms: Email, X, Facebook, WhatsApp, SMS, LinkedIn, Telegram, Reddit
  • 🔌 Custom platform registry via ShareButton.registerPlatform()
  • 🧠 Auto-resolves share data from document.title, <meta>, and Web App Manifest
  • 🌍 Built-in i18n for 12 languages, auto-detected from <html lang>
  • ♿ Accessible: keyboard navigation, focus trapping, focus restoration
  • 📡 7 custom events: bux:share-success, bux:share-abort, bux:copy-success, and more
  • 🖱 Programmatic API: share(), setShareData(), openFallback(), closeFallback()
  • 🎨 Fully customizable via CSS custom properties
  • 🧩 Optional Shadow DOM, disable with no-shadow

Installation

npm install browserux-share-button

Or via CDN:

<script type="module" src="https://unpkg.com/browserux-share-button/dist/browserux-share-button.esm.js"></script>

Usage

import 'browserux-share-button';
<browserux-share-button></browserux-share-button>

With explicit share data and platform control:

<browserux-share-button
  title="My article"
  text="A short description"
  url="https://example.com/article"
  lang="en"
  facebook="false"
  sms="false"
></browserux-share-button>

Parameters

ParameterTypeDescription
urlAttributeURL to share (default: location.href)
titleAttributeShare title (default: document.title)
textAttributeShare description (default: <meta description>)
langAttributeLanguage code for built-in labels
manifest-srcAttributeCustom path to Web App Manifest
no-shadowAttributeDisable Shadow DOM encapsulation
[platform]="false"AttributeDisable a platform: email, x, facebook, whatsapp, sms, linkedin, telegram, reddit
iconSlotCustom icon inside the share button (default: 🔗)
bux:share-successEventNative share completed, e.detail: { title, text, url }
bux:share-abortEventUser cancelled the native share dialog
bux:share-errorEventShare failed, e.detail: { error }
bux:fallback-openEventFallback modal opened
bux:fallback-closeEventFallback modal closed
bux:copy-successEventLink copied, e.detail: { url }
bux:copy-errorEventClipboard write failed, e.detail: { error }
share()MethodTrigger share programmatically
setShareData(data)MethodUpdate share data at runtime
openFallback()MethodOpen the fallback modal programmatically
closeFallback()MethodClose the fallback modal programmatically

Documentation

For detailed documentation, see docs/index.md.

Guide

Reference

  • Attributes : url, title, text, lang, no-shadow, platform disabling
  • Events : all bux:* events with payloads and use cases
  • Slots : icon slot for custom button icon
  • Programmatic API : share(), setShareData(), openFallback(), closeFallback()
  • Platforms : built-in platforms and custom platform registry
  • Utilities : getShareIcon, getBestIconUrl

Additional reference

  • Compatibility : browser support, framework compatibility, build formats
  • Contributing : report a bug, suggest an improvement, submit a PR

License

MIT © 2026 Effeilo

Keywords

web component

FAQs

Package last updated on 06 Apr 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts