Files
5a2cfeae-70b0-44d5-a00f-024…/src/components/Layout.tsx
2026-06-16 07:11:27 +00:00

79 lines
1.7 KiB
TypeScript

import FooterMinimal from '@/components/sections/footer/FooterMinimal';
import NavbarInline from '@/components/ui/NavbarInline';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
import SiteBackgroundSlot from "@/components/ui/SiteBackgroundSlot";
import { Github, Linkedin, Twitter } from "lucide-react";
import { Outlet } from 'react-router-dom';
import { StyleProvider } from "@/components/ui/StyleProvider";
export default function Layout() {
const navItems = [
{
"name": "Features",
"href": "#features"
},
{
"name": "Pricing",
"href": "#pricing"
},
{
"name": "Team",
"href": "#team"
},
{
"name": "Hero",
"href": "#hero"
},
{
"name": "About",
"href": "#about"
},
{
"name": "Product",
"href": "#product"
},
{
"name": "Metrics",
"href": "#metrics"
}
];
return (
<StyleProvider buttonVariant="stagger" siteBackground="noise" heroBackground="cornerGlow">
<SiteBackgroundSlot />
<SectionErrorBoundary name="navbar">
<NavbarInline
logo="NexusFlow"
ctaButton={{
text: "Get Started",
href: "#contact",
}}
navItems={navItems} />
</SectionErrorBoundary>
<main className="flex-grow">
<Outlet />
</main>
<SectionErrorBoundary name="footer">
<FooterMinimal
brand="NexusFlow Inc."
copyright="© 2024 All rights reserved."
socialLinks={[
{
icon: Twitter,
href: "#",
},
{
icon: Github,
href: "#",
},
{
icon: Linkedin,
href: "#",
},
]}
/>
</SectionErrorBoundary>
</StyleProvider>
);
}