File size: 1,486 Bytes
a0da743
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
import type { Metadata } from "next";
import { Geist, Geist_Mono } from "next/font/google";
import "./globals.css";
import Navbar from "@/components/Navbar";
import { InterviewProvider } from "@/context/InterviewContext";
import { AuthProvider } from "@/context/AuthContext";

const geistSans = Geist({
  variable: "--font-geist-sans",
  subsets: ["latin"],
});

const geistMono = Geist_Mono({
  variable: "--font-geist-mono",
  subsets: ["latin"],
});

export const metadata: Metadata = {
  title: "InterviewAI — AI-Powered Mock Interview Platform",
  description:
    "Master your next interview with AI-powered mock interviews. Get real-time feedback, adaptive questions, and comprehensive performance analysis.",
  keywords: ["interview", "AI", "mock interview", "practice", "career"],
};

export default function RootLayout({
  children,
}: Readonly<{
  children: React.ReactNode;
}>) {
  return (
    <html
      lang="en"
      className={`${geistSans.variable} ${geistMono.variable} h-full antialiased`}
    >
      <body className="min-h-full flex flex-col">
        <AuthProvider>
          <InterviewProvider>
            {/* Animated background mesh */}
            <div className="bg-mesh" />
            
            {/* Navigation */}
            <Navbar />

            {/* Main content */}
            <main className="flex-1 pt-16">
              {children}
            </main>
          </InterviewProvider>
        </AuthProvider>
      </body>
    </html>
  );
}