|
1 | 1 | // src/app/(marketing)/about/page.tsx |
| 2 | +import { AboutHero } from '@/components/features/about-hero' |
| 3 | +import { AiModelsSection } from '@/components/features/ai-models-section' |
| 4 | +import { ContactSection } from '@/components/features/contact-section' |
| 5 | +import { DisclaimersSection } from '@/components/features/disclaimers-section' |
| 6 | +import { MissionSection } from '@/components/features/mission-section' |
| 7 | +import { OpenSourceSection } from '@/components/features/open-source-section' |
| 8 | +import { PrivacySection } from '@/components/features/privacy-section' |
| 9 | +import { SafetySection } from '@/components/features/safety-section' |
| 10 | +import { TechStackSection } from '@/components/features/tech-stack-section' |
2 | 11 | import { Container } from '@/components/ui/container' |
| 12 | +import { Divider } from '@/components/ui/divider' |
3 | 13 | import { Section } from '@/components/ui/section' |
| 14 | +import { TableOfContents } from '@/components/ui/table-of-contents' |
4 | 15 |
|
5 | 16 | import type { Metadata } from 'next' |
6 | 17 |
|
7 | 18 | export const metadata: Metadata = { |
8 | 19 | title: 'About', |
9 | | - description: 'Learn about LLM Debate Arena and the team behind it.', |
| 20 | + description: |
| 21 | + 'Learn about LLM Debate Arena — our mission, technology, privacy practices, and the AI models that power debates.', |
| 22 | + openGraph: { |
| 23 | + title: 'About | LLM Debate Arena', |
| 24 | + description: 'Our mission, technology, and commitment to privacy and safety.', |
| 25 | + }, |
10 | 26 | } |
11 | 27 |
|
| 28 | +const tocItems = [ |
| 29 | + { id: 'mission', label: 'Why We Built This' }, |
| 30 | + { id: 'tech-stack', label: 'Built With' }, |
| 31 | + { id: 'ai-models', label: 'The AI Models' }, |
| 32 | + { id: 'privacy', label: 'Your Privacy' }, |
| 33 | + { id: 'safety', label: 'Safe & Fair Debates' }, |
| 34 | + { id: 'disclaimers', label: 'Disclaimers' }, |
| 35 | + { id: 'open-source', label: 'Open Source' }, |
| 36 | + { id: 'contact', label: 'Get in Touch' }, |
| 37 | +] |
| 38 | + |
12 | 39 | export default function AboutPage() { |
13 | 40 | return ( |
14 | | - <Section> |
15 | | - <Container> |
16 | | - <div className="mx-auto max-w-2xl text-center"> |
17 | | - <h1 className="text-4xl font-bold tracking-tight text-foreground sm:text-5xl">About</h1> |
18 | | - <p className="mt-6 text-lg text-muted-foreground">About page coming in Phase 2.3</p> |
19 | | - </div> |
20 | | - </Container> |
21 | | - </Section> |
| 41 | + <> |
| 42 | + <AboutHero /> |
| 43 | + <Section> |
| 44 | + <Container> |
| 45 | + <div className="lg:grid lg:grid-cols-[1fr_220px] lg:gap-12"> |
| 46 | + <article className="min-w-0"> |
| 47 | + <MissionSection /> |
| 48 | + <Divider className="my-12" /> |
| 49 | + <TechStackSection /> |
| 50 | + <Divider className="my-12" /> |
| 51 | + <AiModelsSection /> |
| 52 | + <Divider className="my-12" /> |
| 53 | + <PrivacySection /> |
| 54 | + <Divider className="my-12" /> |
| 55 | + <SafetySection /> |
| 56 | + <Divider className="my-12" /> |
| 57 | + <DisclaimersSection /> |
| 58 | + <Divider className="my-12" /> |
| 59 | + <OpenSourceSection /> |
| 60 | + <Divider className="my-12" /> |
| 61 | + <ContactSection /> |
| 62 | + </article> |
| 63 | + <aside className="hidden lg:block"> |
| 64 | + <TableOfContents items={tocItems} /> |
| 65 | + </aside> |
| 66 | + </div> |
| 67 | + </Container> |
| 68 | + </Section> |
| 69 | + </> |
22 | 70 | ) |
23 | 71 | } |
0 commit comments