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