mirror of
https://github.com/Such-Software/such.software.git
synced 2026-10-17 05:32:05 +02:00
116 lines
4.0 KiB
TypeScript
116 lines
4.0 KiB
TypeScript
import type { Metadata } from "next";
|
|
import { Inter } from "next/font/google";
|
|
import "./globals.css";
|
|
import { ThemeProvider } from "@/components/theme-provider";
|
|
import { DynamicFavicon } from "@/components/dynamic-favicon";
|
|
import { Footer } from "@/components/layout/footer";
|
|
|
|
const inter = Inter({ subsets: ["latin"] });
|
|
|
|
export const metadata: Metadata = {
|
|
metadataBase: new URL("https://such.software"),
|
|
title: "Such Software | Precision Engineering for Everyone",
|
|
description: "E-commerce infrastructure, custom app development, and accessible web applications. Engineered for scale, compliance, and performance.",
|
|
alternates: {
|
|
canonical: "/",
|
|
},
|
|
openGraph: {
|
|
title: "Such Software",
|
|
description: "E-commerce infrastructure, custom app development, and accessible web applications.",
|
|
type: "website",
|
|
siteName: "Such Software",
|
|
images: [
|
|
{
|
|
url: "/images/branding/OG_banner_v2_light.png",
|
|
width: 1200,
|
|
height: 630,
|
|
alt: "Such Software",
|
|
},
|
|
],
|
|
},
|
|
twitter: {
|
|
card: "summary_large_image",
|
|
title: "Such Software",
|
|
description: "E-commerce infrastructure, custom app development, and accessible web applications.",
|
|
images: ["/images/branding/OG_banner_v2_light.png"],
|
|
},
|
|
icons: {
|
|
icon: [
|
|
{ url: "/images/branding/favicon_dark.svg", type: "image/svg+xml", media: "(prefers-color-scheme: dark)" },
|
|
{ url: "/images/branding/favicon_light.svg", type: "image/svg+xml", media: "(prefers-color-scheme: light)" },
|
|
{ url: "/images/branding/favicon_dark.png", sizes: "192x192", type: "image/png", media: "(prefers-color-scheme: dark)" },
|
|
{ url: "/images/branding/favicon_light.png", sizes: "192x192", type: "image/png", media: "(prefers-color-scheme: light)" },
|
|
],
|
|
shortcut: "/images/branding/favicon_dark.svg",
|
|
apple: [
|
|
{ url: "/images/branding/favicon_dark.png", sizes: "192x192", type: "image/png", media: "(prefers-color-scheme: dark)" },
|
|
{ url: "/images/branding/favicon_light.png", sizes: "192x192", type: "image/png", media: "(prefers-color-scheme: light)" },
|
|
],
|
|
},
|
|
manifest: "/manifest.json",
|
|
};
|
|
|
|
const structuredData = {
|
|
"@context": "https://schema.org",
|
|
"@type": "Organization",
|
|
name: "Such Software LLC",
|
|
url: "https://such.software",
|
|
logo: "https://such.software/images/branding/clean_dark_w_text.svg",
|
|
description: "E-commerce infrastructure, custom app development, and accessible web applications. Engineered for scale, compliance, and performance.",
|
|
address: {
|
|
"@type": "PostalAddress",
|
|
streetAddress: "110 E State St, Suite 300",
|
|
addressLocality: "Kennett Square",
|
|
addressRegion: "PA",
|
|
postalCode: "19348",
|
|
addressCountry: "US",
|
|
},
|
|
founder: {
|
|
"@type": "Person",
|
|
name: "John Winter Murphy",
|
|
jobTitle: "Founder & Principal Engineer",
|
|
},
|
|
sameAs: [
|
|
"https://github.com/suchsoftware",
|
|
"https://www.linkedin.com/company/such-software",
|
|
"https://x.com/such_software",
|
|
"https://bsky.app/profile/suchsoftware.bsky.social",
|
|
"https://www.youtube.com/@SuchSoftware",
|
|
"https://www.instagram.com/such_software/",
|
|
"https://www.tiktok.com/@such.software",
|
|
"https://www.facebook.com/people/Such-Software/61572076196412/",
|
|
"https://www.pinterest.com/SuchSoftware/",
|
|
"https://t.me/SuchSoftware",
|
|
],
|
|
};
|
|
|
|
export default function RootLayout({
|
|
children,
|
|
}: Readonly<{
|
|
children: React.ReactNode;
|
|
}>) {
|
|
return (
|
|
<html lang="en" suppressHydrationWarning>
|
|
<head>
|
|
<script
|
|
type="application/ld+json"
|
|
dangerouslySetInnerHTML={{ __html: JSON.stringify(structuredData) }}
|
|
/>
|
|
</head>
|
|
<body className={inter.className}>
|
|
<ThemeProvider
|
|
attribute="class"
|
|
defaultTheme="system"
|
|
enableSystem
|
|
disableTransitionOnChange
|
|
>
|
|
<DynamicFavicon />
|
|
<div className="relative z-10 flex flex-col min-h-screen">
|
|
{children}
|
|
<Footer />
|
|
</div>
|
|
</ThemeProvider>
|
|
</body>
|
|
</html>
|
|
);
|
|
} |