PricingComparison
pricingcomparison-1779394345546.tsx
'use client'
const FEATURES = [
{ name:'Components', free:'50', pro:'17,500+', team:'17,500+' },
{ name:'MCP Access', free:false, pro:true, team:true },
{ name:'Commercial License', free:false, pro:true, team:true },
{ name:'Priority Support', free:false, pro:true, team:true },
{ name:'Team Members', free:'1', pro:'1', team:'Unlimited' },
{ name:'API Access', free:false, pro:true, team:true },
{ name:'Custom Branding', free:false, pro:false, team:true },
{ name:'SSO', free:false, pro:false, team:true },
]
const render = (v) => {
if (v === true) return <span style={{ color:'#10b981', fontSize:'18px' }}>✓</span>
if (v === false) return <span style={{ color:'#e2e8f0', fontSize:'18px' }}>—</span>
return <span style={{ fontSize:'13px', fontWeight:600, color:'#374151' }}>{v}</span>
}
export default function PricingComparison() {
return (
<div style={{ background:'#fff', borderRadius:'16px', overflow:'hidden', boxShadow:'0 2px 20px rgba(0,0,0,0.06)', maxWidth:'600px' }}>
<div style={{ display:'grid', gridTemplateColumns:'2fr 1fr 1fr 1fr', background:'#f8fafc', borderBottom:'2px solid #e2e8f0' }}>
<div style={{ padding:'16px 20px', fontWeight:700, color:'#94a3b8', fontSize:'12px', textTransform:'uppercase' }}>Feature</div>
{['Free','Pro','Team'].map((t, i) => (
<div key={t} style={{ padding:'16px', textAlign:'center', fontWeight:700, color:i===1?'#6d28d9':'#374151', fontSize:'14px' }}>{t}</div>
))}
</div>
{FEATURES.map((f, i) => (
<div key={f.name} style={{ display:'grid', gridTemplateColumns:'2fr 1fr 1fr 1fr', background:i%2===0?'#fff':'#fafbfc', borderBottom:'1px solid #f1f5f9' }}>
<div style={{ padding:'14px 20px', fontSize:'13px', fontWeight:500, color:'#374151' }}>{f.name}</div>
<div style={{ padding:'14px', textAlign:'center' }}>{render(f.free)}</div>
<div style={{ padding:'14px', textAlign:'center', background:'rgba(109,40,217,0.03)' }}>{render(f.pro)}</div>
<div style={{ padding:'14px', textAlign:'center' }}>{render(f.team)}</div>
</div>
))}
</div>
)
}Component info
CategoryPricing
Frameworkreact
TierFREE
Views0
Copies0
About
Feature comparison table across pricing tiers with check/cross marks
More from Pricing
'use client'
import { useState } from 'react'
interface Plan {
name: string
monthly: number
annual: number
features: string[]
highlight: boolean
badge?: string
}
const plans: Plan[] = [
{
name: 'Free', monthly: 0, annual: 0,
fPricingToggle
Pricing
'use client'
import { useState } from 'react'
const PLANS = [
{ name:'Free', monthly:0, annual:0, features:['5 projects','1GB storage','Email support'], cta:'Get Started' },
{ name:'Pro', monthly:29, annual:19, features:['Unlimited projects','50PricingToggle
Pricing