48 lines
1.8 KiB
TypeScript
48 lines
1.8 KiB
TypeScript
// Copyright (c) 2025 Bytedance Ltd. and/or its affiliates
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
import { useMemo } from "react";
|
|
|
|
import { SiteHeader } from "./chat/components/site-header";
|
|
import { Jumbotron } from "./landing/components/jumbotron";
|
|
import { Ray } from "./landing/components/ray";
|
|
import { CaseStudySection } from "./landing/sections/case-study-section";
|
|
import { CoreFeatureSection } from "./landing/sections/core-features-section";
|
|
import { JoinCommunitySection } from "./landing/sections/join-community-section";
|
|
import { MultiAgentSection } from "./landing/sections/multi-agent-section";
|
|
|
|
export default function HomePage() {
|
|
return (
|
|
<div className="flex flex-col items-center">
|
|
<SiteHeader />
|
|
<main className="container flex flex-col items-center justify-center gap-56">
|
|
<Jumbotron />
|
|
<CaseStudySection />
|
|
<MultiAgentSection />
|
|
<CoreFeatureSection />
|
|
<JoinCommunitySection />
|
|
</main>
|
|
<Footer />
|
|
<Ray />
|
|
</div>
|
|
);
|
|
}
|
|
|
|
function Footer() {
|
|
const year = useMemo(() => new Date().getFullYear(), []);
|
|
return (
|
|
<footer className="container mt-32 flex flex-col items-center justify-center">
|
|
<hr className="from-border/0 via-border/70 to-border/0 m-0 h-px w-full border-none bg-gradient-to-r" />
|
|
<div className="text-muted-foreground container flex h-20 flex-col items-center justify-center text-sm">
|
|
<p className="text-center font-serif text-lg md:text-xl">
|
|
"Originated from Open Source, give back to Open Source."
|
|
</p>
|
|
</div>
|
|
<div className="text-muted-foreground container mb-8 flex flex-col items-center justify-center text-xs">
|
|
<p>Licensed under MIT License</p>
|
|
<p>© {year} DeerFlow</p>
|
|
</div>
|
|
</footer>
|
|
);
|
|
}
|