Files
nutriscan/app/layout.tsx
T
Evandro Fonseca Junior 9a4e4c762e feat(ui): enhance footer with NutriScan branding and fix database path
- Redesigned Footer.tsx with comprehensive layout including brand section, navigation links, social media icons, and contact info to improve user engagement and brand visibility
- Updated DATABASE_URL in .env to correct Prisma database path for proper configuration and connectivity
- Updated dependencies to support new UI components and ensure compatibility with enhanced features
2025-10-09 00:14:30 -03:00

71 lines
2.0 KiB
TypeScript

import "./globals.css";
import { Metadata } from "next";
import { Inter } from "next/font/google";
import { ThemeProvider } from "@/app/providers";
// Use Inter como fallback já que é uma fonte similar à Geist
const inter = Inter({ subsets: ["latin"] });
export const metadata: Metadata = {
metadataBase: new URL("https://nutriscan.com.br"),
title: {
default: "NutriScan - Informações Nutricionais de Alimentos",
template: "%s | NutriScan",
},
description:
"Descubra informações nutricionais completas de milhares de produtos alimentícios. Consulte Nutri-Score, ingredientes e valores nutricionais.",
keywords: [
"informações nutricionais",
"nutri-score",
"ingredientes",
"alimentação saudável",
"open food facts",
"código de barras",
"nutrição",
],
authors: [{ name: "Evandro", url: "https://evandro.dev.br" }],
creator: "Evandro",
openGraph: {
type: "website",
locale: "pt_BR",
url: "https://nutriscan.com.br",
title: "NutriScan - Informações Nutricionais de Alimentos",
description:
"Descubra informações nutricionais completas de milhares de produtos alimentícios.",
siteName: "NutriScan",
},
twitter: {
card: "summary_large_image",
title: "NutriScan - Informações Nutricionais de Alimentos",
description:
"Descubra informações nutricionais completas de milhares de produtos alimentícios.",
creator: "@evandrodev",
},
manifest: "/manifest.json",
robots: {
index: true,
follow: true,
googleBot: {
index: true,
follow: true,
"max-video-preview": -1,
"max-image-preview": "large",
"max-snippet": -1,
},
},
};
export default function RootLayout({
children,
}: {
children: React.ReactNode;
}) {
return (
<html lang="pt-BR" suppressHydrationWarning className={inter.className}>
<body className="min-h-screen bg-background antialiased">
<ThemeProvider>{children}</ThemeProvider>
</body>
</html>
);
}