noisecanceller / frontend /src /app /layout.tsx
raghu2's picture
Add Google Site Verification meta tag
d04cfed
Raw
History Blame Contribute Delete
1.76 kB
import { Inter, Outfit } from "next/font/google";
import { ClerkProvider } from '@clerk/nextjs';
import { dark } from '@clerk/themes';
import "./globals.css";
import Navbar from "../components/Navbar";
import Footer from "../components/Footer";
import type { Metadata } from 'next';
const inter = Inter({
subsets: ["latin"],
variable: "--font-inter",
});
const outfit = Outfit({
subsets: ["latin"],
variable: "--font-outfit",
});
export const metadata: Metadata = {
title: "VocalBee | The World's Best AI Vocal Extractor",
description: "Extract high-quality vocals, drums, bass, and instruments from any audio or video file instantly using deep learning.",
keywords: ["vocal remover", "extract vocals", "AI stem separation", "isolate vocals", "karaoke maker", "free vocal remover", "audio separator"],
openGraph: {
title: "VocalBee | Free Audio Separation",
description: "Extract studio-quality vocals, drums, bass, and instruments from any audio or video file for free using advanced AI.",
type: "website",
},
verification: {
google: "UuCDe-NGPE9ac4gAQchPj6qrDOS1-FtRGRD3oNJqI4Q",
},
};
export default function RootLayout({
children,
}: Readonly<{
children: React.ReactNode;
}>) {
return (
<ClerkProvider
appearance={{
baseTheme: dark,
variables: {
colorPrimary: '#1877F2'
}
}}
>
<html lang="en" className={`${inter.variable} ${outfit.variable}`}>
<body className="flex flex-col min-h-screen bg-[#050505] text-[#E4E6EB] font-sans antialiased overflow-x-hidden">
<Navbar />
<main className="flex-grow">
{children}
</main>
<Footer />
</body>
</html>
</ClerkProvider>
);
}