feat(portfolio): assemble signal blacksite landing page

This commit is contained in:
kbot
2026-07-06 20:42:46 -05:00
parent 00d1859f41
commit 48af740469

View File

@@ -1,18 +1,45 @@
import Link from 'next/link'
import type { Metadata } from 'next'
import { CapabilityRows } from '@/components/portfolio/CapabilityRows'
import { ClosingCta } from '@/components/portfolio/ClosingCta'
import { CommandPalette } from '@/components/portfolio/CommandPalette'
import { ContactTerminal } from '@/components/portfolio/ContactTerminal'
import { FeaturedDossier } from '@/components/portfolio/FeaturedDossier'
import { FieldNotes } from '@/components/portfolio/FieldNotes'
import { Hero } from '@/components/portfolio/Hero'
import { Manifesto } from '@/components/portfolio/Manifesto'
import { OperatorProfile } from '@/components/portfolio/OperatorProfile'
import { PortfolioNav } from '@/components/portfolio/PortfolioNav'
import { StatusBar } from '@/components/portfolio/StatusBar'
import { WorkIndex } from '@/components/portfolio/WorkIndex'
import { getPosts } from '@/lib/posts'
import { hero } from '@/lib/portfolio'
export const metadata: Metadata = {
title: 'Krishna Ayyalasomayajula — Systems Engineer',
description: hero.subline,
openGraph: {
images: ['/og.png'],
},
}
export default async function HomePage() {
const posts = (await getPosts()).slice(0, 4)
export default function HomePage() {
return (
<div className="flex min-h-screen flex-col items-center justify-center gap-6 bg-blacksite-bg px-6 text-center text-blacksite-text">
{/* Temporary placeholder until the portfolio landing is implemented in P5. */}
<h1 className="font-display text-4xl font-semibold tracking-tight sm:text-6xl">
Krishna Ayyalasomayajula
</h1>
<Link
href="/blog/"
className="font-mono text-xs uppercase tracking-[0.22em] text-signal-cyan underline-offset-4 transition hover:text-signal-orange hover:underline"
>
Field Notes
</Link>
<div className="min-h-screen bg-blacksite-bg text-blacksite-text">
<StatusBar />
<PortfolioNav />
<Hero />
<FeaturedDossier />
<WorkIndex />
<Manifesto />
<CapabilityRows />
<OperatorProfile />
<FieldNotes posts={posts} />
<ContactTerminal />
<ClosingCta />
<CommandPalette />
</div>
)
}