forum: rebrand to The Crew Lounge + scaffold Credits system
UI (targeted edits, no identifier renames): - forum/layout.tsx: metadata title/OG/twitter/schema.org + breadcrumb name → The Crew Lounge - forum/page.tsx: H1 + intro copy → The Crew Lounge (swapped 💬 for /logos/crew-lounge-logo.svg) New assets: - public/logos/crew-lounge-logo.svg — film-reel + CREW logo, #5B7C8D → #8FB0C3 gradient - src/components/crew-lounge/CreditsDisplay.tsx — per-category totals + Crew Leader badge - src/components/crew-lounge/CrewLoungeLogo.tsx — wrapper component Database (4 new tables on supabase01, all TIMESTAMPTZ, IF NOT EXISTS guards): - bb.user_credits — per-user/per-category daily credit ledger - bb.user_credits_totals — cached leaderboard totals - bb.crew_leader_badges — awarded at 10+ credits/category - bb.credits_monthly_snapshot — monthly leaderboard captures Docs: - docs/guides/FORUM_SETUP_COMPLETE.md — replication guide - docs/guides/FORUM_SETUP_CHECKLIST.md — per-property checklist Forum tables (bb.forum_*) and TypeScript identifiers untouched. Routes (/forum) unchanged — display-name rebrand only. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,19 +1,19 @@
|
||||
import type { Metadata } from 'next';
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: 'Industry Forum — Broadcast Beat',
|
||||
description: 'Connect with broadcast, motion picture and post production professionals worldwide. Discuss live production, IP workflows, streaming, audio, cameras, AI automation, and more.',
|
||||
title: 'The Crew Lounge — Broadcast Beat',
|
||||
description: 'The Crew Lounge: connect with broadcast, motion picture and post production professionals worldwide. Discuss live production, IP workflows, streaming, audio, cameras, AI automation, and more.',
|
||||
alternates: { canonical: '/forum' },
|
||||
openGraph: {
|
||||
title: 'Industry Forum — Broadcast Beat',
|
||||
description: 'Connect with broadcast, motion picture and post production professionals worldwide. Ask questions, share expertise, and discuss broadcast technology.',
|
||||
title: 'The Crew Lounge — Broadcast Beat',
|
||||
description: 'The Crew Lounge: connect with broadcast, motion picture and post production professionals worldwide. Ask questions, share expertise, and discuss broadcast technology.',
|
||||
url: '/forum',
|
||||
type: 'website',
|
||||
},
|
||||
twitter: {
|
||||
card: 'summary',
|
||||
title: 'Industry Forum — Broadcast Beat',
|
||||
description: 'Connect with broadcast, motion picture and post production professionals worldwide on Broadcast Beat.',
|
||||
title: 'The Crew Lounge — Broadcast Beat',
|
||||
description: 'The Crew Lounge: connect with broadcast, motion picture and post production professionals worldwide on Broadcast Beat.',
|
||||
},
|
||||
};
|
||||
|
||||
@@ -21,8 +21,8 @@ export default function ForumLayout({ children }: { children: React.ReactNode })
|
||||
const schema = {
|
||||
'@context': 'https://schema.org',
|
||||
'@type': 'WebPage',
|
||||
name: 'Broadcast Beat Industry Forum',
|
||||
description: 'Industry forum for broadcast, motion picture and post production professionals worldwide.',
|
||||
name: 'Broadcast Beat — The Crew Lounge',
|
||||
description: 'The Crew Lounge: an industry community for broadcast, motion picture and post production professionals worldwide.',
|
||||
url: 'https://broadcastb5322.builtwithrocket.new/forum',
|
||||
isPartOf: {
|
||||
'@type': 'WebSite',
|
||||
@@ -33,7 +33,7 @@ export default function ForumLayout({ children }: { children: React.ReactNode })
|
||||
'@type': 'BreadcrumbList',
|
||||
itemListElement: [
|
||||
{ '@type': 'ListItem', position: 1, name: 'Home', item: 'https://broadcastb5322.builtwithrocket.new' },
|
||||
{ '@type': 'ListItem', position: 2, name: 'Forum', item: 'https://broadcastb5322.builtwithrocket.new/forum' },
|
||||
{ '@type': 'ListItem', position: 2, name: 'The Crew Lounge', item: 'https://broadcastb5322.builtwithrocket.new/forum' },
|
||||
],
|
||||
},
|
||||
};
|
||||
|
||||
@@ -262,11 +262,11 @@ export default function ForumIndexPage() {
|
||||
<div className="bg-[#1a2535] border-b border-[#2a3a50]">
|
||||
<div className="max-w-container mx-auto px-4 py-10">
|
||||
<div className="flex items-center gap-3 mb-2">
|
||||
<span className="text-2xl">💬</span>
|
||||
<h1 className="text-3xl font-heading font-bold text-white">Industry Forum</h1>
|
||||
<img src="/logos/crew-lounge-logo.svg" alt="The Crew Lounge" className="w-8 h-8" />
|
||||
<h1 className="text-3xl font-heading font-bold text-white">The Crew Lounge</h1>
|
||||
</div>
|
||||
<p className="text-[#aab4c4] font-body text-base max-w-2xl">
|
||||
Connect with broadcast, motion picture and post production professionals worldwide. Ask questions, share expertise, and discuss the technology shaping the industry.
|
||||
The Crew Lounge: connect with broadcast, motion picture and post production professionals worldwide. Ask questions, share expertise, and discuss the technology shaping the industry.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user