Files
plant-disease-id/apps/web/src/app/layout.tsx
Michael Freno 820a872f07 Initial commit: Plant Disease Identification app
- Next.js 16 App Router project with Tailwind CSS
- Plant disease knowledge base (93 diseases, 25 plants)
- Image upload with client+server preprocessing
- ML inference pipeline with mock/demo fallback
- Responsive results page with disease cards and treatment
- Full test suite (285 passing tests)
2026-06-05 19:21:16 -04:00

53 lines
1.2 KiB
TypeScript

import type { Metadata } from "next";
import { Inter } from "next/font/google";
import "./globals.css";
import Navbar from "@/components/Navbar";
import Footer from "@/components/Footer";
import ErrorBoundary from "@/components/ErrorBoundary";
import { APP_NAME, APP_DESCRIPTION, BETA_DISCLAIMER } from "@/lib/constants";
const inter = Inter({
variable: "--font-inter",
subsets: ["latin"],
display: "swap",
});
export const metadata: Metadata = {
title: {
default: `${APP_NAME}${APP_DESCRIPTION}`,
template: `%s | ${APP_NAME}`,
},
description: APP_DESCRIPTION,
openGraph: {
title: APP_NAME,
description: APP_DESCRIPTION,
type: "website",
siteName: APP_NAME,
},
robots: {
index: true,
follow: true,
},
};
export default function RootLayout({
children,
}: Readonly<{
children: React.ReactNode;
}>) {
return (
<html
lang="en"
className={`${inter.variable} h-full scroll-smooth antialiased`}
>
<body className="min-h-full flex flex-col bg-white dark:bg-zinc-950 text-zinc-900 dark:text-zinc-100 font-sans">
<ErrorBoundary>
<Navbar />
<main className="flex-1">{children}</main>
<Footer />
</ErrorBoundary>
</body>
</html>
);
}