aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/app/layout.tsx14
-rw-r--r--src/app/page.tsx72
-rw-r--r--src/components/ui/toast.tsx31
3 files changed, 42 insertions, 75 deletions
diff --git a/src/app/layout.tsx b/src/app/layout.tsx
index 35e95b1..3c5cde0 100644
--- a/src/app/layout.tsx
+++ b/src/app/layout.tsx
@@ -1,8 +1,10 @@
import type { Metadata } from "next";
import "./globals.css";
+import { Toaster } from "sonner";
import AuthSessionProvider from "@/components/SessionProvider";
-import { Toaster } from "@/components/ui/toast";
import { ThemeProvider } from "@/components/ThemeProvider";
+import Navbar from "@/components/Navbar";
+import Footer from "@/components/Footer";
export const metadata: Metadata = {
title: "Boilerplate",
@@ -16,16 +18,20 @@ export default function RootLayout({
}>) {
return (
<html lang="en" suppressHydrationWarning>
- <body>
+ <body className="min-h-screen flex flex-col">
<ThemeProvider
attribute="class"
defaultTheme="system"
enableSystem
disableTransitionOnChange
>
- <AuthSessionProvider>
- {children}
+ <AuthSessionProvider>
<Toaster />
+ <Navbar />
+ <main className="flex-1">
+ {children}
+ </main>
+ <Footer />
</AuthSessionProvider>
</ThemeProvider>
</body>
diff --git a/src/app/page.tsx b/src/app/page.tsx
index 38fc4bb..ade6baa 100644
--- a/src/app/page.tsx
+++ b/src/app/page.tsx
@@ -1,51 +1,43 @@
import Link from "next/link"
import { Button } from "@/components/ui/button"
-import Navbar from "@/components/Navbar"
-import Footer from "@/components/Footer"
import { LogIn, ArrowRight } from "lucide-react"
export default function Home() {
return (
- <div className="min-h-screen flex flex-col">
- <Navbar />
-
- <main className="flex-1 flex items-center justify-center">
- <div className="container mx-auto px-4 py-20 text-center">
- <div className="max-w-3xl mx-auto space-y-8">
- <div className="space-y-4">
- <h1 className="text-4xl md:text-6xl font-bold tracking-tight">
- Build Something
- <span className="text-primary"> Amazing</span>
- </h1>
- <p className="text-xl text-muted-foreground max-w-2xl mx-auto leading-relaxed">
- A modern Next.js application with beautiful UI components,
- secure authentication, and everything you need to build your next project.
- </p>
- </div>
-
- <div className="flex flex-col sm:flex-row gap-4 justify-center items-center">
- <Button asChild size="lg" className="text-lg px-8 py-6">
- <Link href="/login">
- <LogIn className="mr-2 h-5 w-5" />
- Get Started
- </Link>
- </Button>
- <Button variant="outline" size="lg" className="text-lg px-8 py-6">
- Learn More
- <ArrowRight className="ml-2 h-5 w-5" />
- </Button>
- </div>
-
- <div className="pt-8">
- <p className="text-sm text-muted-foreground">
- Built with Next.js, Tailwind CSS, Shadcn/UI, and MongoDB
- </p>
- </div>
+ <div className="flex-1 flex items-center justify-center">
+ <div className="container mx-auto px-4 py-20 text-center">
+ <div className="max-w-3xl mx-auto space-y-8">
+ <div className="space-y-4">
+ <h1 className="text-4xl md:text-6xl font-bold tracking-tight">
+ Build Something
+ <span className="text-primary"> Amazing</span>
+ </h1>
+ <p className="text-xl text-muted-foreground max-w-2xl mx-auto leading-relaxed">
+ A modern Next.js application with beautiful UI components,
+ secure authentication, and everything you need to build your next project.
+ </p>
+ </div>
+
+ <div className="flex flex-col sm:flex-row gap-4 justify-center items-center">
+ <Button asChild size="lg" className="text-lg px-8 py-6">
+ <Link href="/login">
+ <LogIn className="mr-2 h-5 w-5" />
+ Get Started
+ </Link>
+ </Button>
+ <Button variant="outline" size="lg" className="text-lg px-8 py-6">
+ Learn More
+ <ArrowRight className="ml-2 h-5 w-5" />
+ </Button>
+ </div>
+
+ <div className="pt-8">
+ <p className="text-sm text-muted-foreground">
+ Built with Next.js, Tailwind CSS, Shadcn/UI, and MongoDB
+ </p>
</div>
</div>
- </main>
-
- <Footer />
+ </div>
</div>
)
}
diff --git a/src/components/ui/toast.tsx b/src/components/ui/toast.tsx
deleted file mode 100644
index 0991276..0000000
--- a/src/components/ui/toast.tsx
+++ /dev/null
@@ -1,31 +0,0 @@
-"use client"
-
-import { Toaster as Sonner } from "sonner"
-import { useTheme } from "next-themes"
-
-type ToasterProps = React.ComponentProps<typeof Sonner>
-
-const Toaster = ({ ...props }: ToasterProps) => {
- const { theme = "system" } = useTheme()
-
- return (
- <Sonner
- theme={theme as ToasterProps["theme"]}
- className="toaster group"
- toastOptions={{
- classNames: {
- toast:
- "group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",
- description: "group-[.toast]:text-muted-foreground",
- actionButton:
- "group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",
- cancelButton:
- "group-[.toast]:bg-muted group-[.toast]:text-muted-foreground",
- },
- }}
- {...props}
- />
- )
-}
-
-export { Toaster } \ No newline at end of file