import type { Metadata } from "next"; import { BitAura } from "@/src/components/bits/BitAura"; import { DecodeText } from "@/src/components/bits/DecodeText"; import { Block } from "@/src/components/home/Block"; import { ClosingCta } from "@/src/components/home/ClosingCta"; import { Faq } from "@/src/components/home/Faq"; import { HeroStatement } from "@/src/components/home/HeroStatement"; import { HomeJsonLd } from "@/src/components/home/HomeJsonLd"; import { PathPicker } from "@/src/components/home/PathPicker"; import { PortraitSection } from "@/src/components/home/PortraitSection"; import { StickyBook } from "@/src/components/home/StickyBook"; import { AutomationFlow } from "@/src/components/illustrations/AutomationFlow"; import { CareerLine } from "@/src/components/illustrations/CareerLine"; import { ContactDiagram } from "@/src/components/illustrations/ContactDiagram"; import { PipelineRun } from "@/src/components/illustrations/PipelineRun"; import { WorkShowcase } from "@/src/components/illustrations/WorkShowcase"; import { Reveal } from "@/src/components/Reveal"; import { contentFor } from "@/src/content"; import type { SplitTitle } from "@/src/content/types"; import { DEFAULT_LOCALE, parseLocale } from "@/src/domain/locale"; import { languageAlternates, pathFor } from "@/src/domain/routes"; type Props = { readonly params: Promise<{ readonly locale: string }> }; export async function generateMetadata({ params }: Props): Promise { const locale = parseLocale((await params).locale) ?? DEFAULT_LOCALE; const { site } = contentFor(locale); return { title: { absolute: site.title }, description: site.description, alternates: { canonical: pathFor("home", locale), languages: languageAlternates("home"), }, }; } const MUTED = "text-slate-400"; const BODY = "m-0 font-sans text-lg leading-relaxed text-slate-500 md:text-xl"; const MONO = "font-mono text-[11px] uppercase tracking-[0.2em] text-slate-500"; const Title: React.FC<{ title: SplitTitle; muted?: string }> = ({ title, muted = MUTED, }) => ( <> {title.lead} {title.rest} ); export default async function LandingPage({ params }: Props) { const locale = parseLocale((await params).locale) ?? DEFAULT_LOCALE; const content = contentFor(locale); const { hello, services, automation, technology, working, work, faq } = content; return (

{hello.lead}

{hello.paragraphs.map((paragraph, i) => (

{paragraph}

))}

{hello.careerLabel}

} > } >

{automation.intro}

{automation.notes.map((group, i) => (

{group.title}

    {group.items.map((item) => (
  • {item}
  • ))}
))}
} >
{technology.fit.map((group, i) => (

{group.title}

    {group.items.map((item) => (
  • {item}
  • ))}
))}

{technology.techLabel}

{technology.tech.map((group) => (

{group.area}

    {group.items.map((item) => (
  • ))}
))}

{technology.pipelineTitle}

{technology.pipelineIntro}

} >
{working.principles.map((item, i) => (

{item.title}

{item.text}

))}
} >

{work.note}

}>
); }