← Components/Marketing & Lead Gen

SocialShare

socialshare-1779394025989.tsx
'use client'
import { useState } from 'react'

const PLATFORMS = [
  { id:'twitter', label:'Twitter', icon:'🐦', color:'#1da1f2', count:248 },
  { id:'linkedin', label:'LinkedIn', icon:'💼', color:'#0a66c2', count:127 },
  { id:'reddit', label:'Reddit', icon:'🤖', color:'#ff4500', count:89 },
  { id:'copy', label:'Copy Link', icon:'🔗', color:'#6d28d9', count:0 },
]

export default function SocialShare({ url = 'https://empire-ui.com' }) {
  const [shared, setShared] = useState(new Set())
  const handleShare = (id) => {
    setShared(s => new Set([...s, id]))
  }
  return (
    <div style={{ display:'flex', gap:'10px', flexWrap:'wrap' }}>
      {PLATFORMS.map(p => (
        <button key={p.id} onClick={() => handleShare(p.id)} style={{
          display:'flex', alignItems:'center', gap:'8px',
          background:shared.has(p.id) ? p.color : '#f8fafc',
          color:shared.has(p.id) ? '#fff' : '#374151',
          border:'1px solid ' + (shared.has(p.id) ? p.color : '#e2e8f0'),
          borderRadius:'10px', padding:'8px 14px',
          cursor:'pointer', fontSize:'13px', fontWeight:600,
          transition:'all 0.2s',
        }}>
          <span style={{ fontSize:'16px' }}>{p.icon}</span>
          {p.label}
          {p.count > 0 && (
            <span style={{
              background:shared.has(p.id) ? 'rgba(255,255,255,0.3)' : '#e2e8f0',
              padding:'2px 6px', borderRadius:'9999px', fontSize:'11px',
            }}>{p.count + (shared.has(p.id) ? 1 : 0)}</span>
          )}
        </button>
      ))}
    </div>
  )
}

Component info

CategoryMarketing & Lead Gen
Frameworkreact
TierFREE
Views0
Copies0

About

Social sharing buttons for major platforms with share counts

More from Marketing & Lead Gen

'use client'
import { useEffect, useState } from 'react'

const avatars = ['👨‍💻','👩‍💻','🧑‍💼','👨‍🎨','👩‍🎨','🧑‍💻','👨‍💼','👩‍💼']
const companies = ['Stripe', 'Vercel', 'Linear', 'Notion', 'Figma', 'Github']
const badges = [
  { icon: '🔒',
SocialProof
Marketing & Lead Gen
'use client'
import { useState } from 'react'

const FEATURES = [
  { label: 'Component count', empire: '120+', shadcn: '48', headless: '23+', magic: '50+' },
  { label: 'AI-generated', empire: true, shadcn: false, headless: false, magic: false },
  
FeatureComparison
Marketing & Lead Gen
'use client';
import { useEffect, useRef } from 'react';

export default function GradientText({ text = "Build something amazing", size = "48px" }) {
  const ref = useRef(null);

  useEffect(() => {
    let angle = 0;
    const frame = () => {
      
GradientText
Marketing & Lead Gen
'use client'
import { useState } from 'react'

const TEAM = [
  { name:'Alice Martin', role:'Lead Designer', emoji:'👩‍🎨', bg:'#f0f4ff', links:['🐦','💼','🐙'] },
  { name:'Bob Chen', role:'Senior Dev', emoji:'👨‍💻', bg:'#f0fdf4', links:['🐦','💼',
TeamGrid
Marketing & Lead Gen