feat(landing): honest high-end redesign — kill fake social proof, brand gradient identity, final CTA, mobile fixes

- removed fabricated fork counts/'verified' badges, 'our customers ship
  today' copy, pseudo client logo marks and stale v0.1 badge (zero-user
  product must not fake traction)
- new proof-by-specificity band: verifiable links to /docs/oauth, /status,
  /security instead of testimonial cosplay
- identity: indigo-to-cyan brand gradient, indigo-tinted elevated surfaces,
  mono section kickers, terminal-chrome hero rotator, gradient h-11 CTA
- how-it-works as connected pipeline; new final CTA band (page no longer
  ends on FAQ); footer upgraded to 4-column product/resources/legal
- lib/pricing.ts single tier source for pricing page + landing teaser;
  annual-billing FAQ claim softened to truth (no annual checkout exists)
- hero video preload=metadata + IntersectionObserver play (2.6MB off the
  critical path); 44px touch targets; mobile menu: Guides link, CTA,
  scroll-lock, escape/outside-tap close

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SXUwmPVRTD8AKQtio6gCN5
This commit is contained in:
Marco Sadjadi
2026-07-08 23:00:25 +02:00
parent cba45402ce
commit 17056d0b30
8 changed files with 627 additions and 432 deletions

91
apps/web/lib/pricing.ts Normal file
View File

@@ -0,0 +1,91 @@
// Single source of truth for pricing tiers. Rendered on /pricing (all tiers)
// and as the landing-page teaser (Hobby + Pro). The landing page previously
// carried its own hardcoded copy of this data, which had already drifted —
// one array, two consumers, no drift.
export interface PricingTier {
name: string;
price: string;
tag: string;
description: string;
model: string;
modelDetail: string;
features: string[];
cta: string;
href: string;
highlight?: boolean;
}
export const TIERS: PricingTier[] = [
{
name: 'Hobby',
price: '€0',
tag: 'Forever free',
description: 'For trying things out and shipping single-user tools.',
model: 'Open-tier AI',
modelDetail: 'Free-tier model · ~30-60s analyze',
features: [
'1 MCP server',
'100,000 tool calls / month',
'5 prompt analyses / day',
'BuildMyMCP subdomain',
'Community support',
],
cta: 'Start free',
href: '/login',
},
{
name: 'Pro',
price: '€49',
tag: '/ month',
description: 'For solo founders and small teams shipping production tools.',
model: 'Claude AI',
modelDetail: 'Powered by Anthropic Claude · ~1020s analyze',
features: [
'5 MCP servers',
'1M tool calls / month',
'40 prompt analyses / day',
'Priority build queue',
'Custom domain · coming soon',
'Email support, 1 business-day response',
],
cta: 'Start Pro',
href: '/settings/billing?tier=pro_monthly',
highlight: true,
},
{
name: 'Team',
price: '€199',
tag: '/ month',
description: 'For teams that need an audit trail and room to scale.',
model: 'Claude AI',
modelDetail: "Anthropic's flagship quality",
features: [
'25 MCP servers',
'10M tool calls / month',
'50 prompt analyses / day',
'Audit log',
'RBAC · coming soon',
'Shared Slack channel support',
],
cta: 'Start Team',
href: '/settings/billing?tier=team_monthly',
},
{
name: 'Enterprise',
price: 'Custom',
tag: 'talk to us',
description: 'For organizations with custom infrastructure, compliance and scale needs.',
model: 'Claude AI',
modelDetail: 'Top-tier Claude · EU data-residency option',
features: [
'Unlimited servers',
'Custom infrastructure & data residency — on request',
'Dedicated hosting — scoped per contract',
'SSO / SAML — on request',
'Customer success manager',
],
cta: 'Contact sales',
href: 'mailto:sales@buildmymcpserver.com',
},
];