Compare commits

..

2 Commits

Author SHA1 Message Date
8624d2c805 feat: add SiteFooter component and integrate it into RootLayout
Some checks failed
Push to github container register / push-docker (push) Has been cancelled
2026-04-06 03:41:20 +00:00
fe02b86b1b feat: refactor layout to use SiteHeader component 2026-04-06 03:41:20 +00:00
4 changed files with 51 additions and 29 deletions

View File

@@ -1,8 +1,9 @@
import type { Metadata } from "next";
import { Geist, Geist_Mono, Inter } from "next/font/google";
import Link from "next/link";
import "./globals.css";
import { cn } from "@/lib/utils";
import { SiteHeader } from "@/components/site-header";
import { SiteFooter } from "@/components/site-footer";
const inter = Inter({subsets:['latin'],variable:'--font-sans'});
@@ -32,22 +33,9 @@ export default function RootLayout({
className={cn("h-full", "antialiased", geistSans.variable, geistMono.variable, "font-sans", inter.variable)}
>
<body className="min-h-full flex flex-col">
<header className="sticky top-0 z-40 border-b bg-background/85 backdrop-blur motion-safe:animate-in motion-safe:fade-in motion-safe:slide-in-from-top-2 motion-safe:duration-500">
<div className="mx-auto flex w-full max-w-6xl items-center justify-between px-4 py-3 sm:px-8">
<Link href="/" className="text-sm font-semibold tracking-tight transition-colors duration-200 hover:text-primary sm:text-base">
Takasumi-Neodyマイクラサーバプロジェクト
</Link>
<nav className="flex items-center gap-4 text-sm">
<Link href="/" className="underline-offset-4 transition-colors duration-200 hover:text-primary hover:underline">
</Link>
<Link href="/announcements" className="underline-offset-4 transition-colors duration-200 hover:text-primary hover:underline">
</Link>
</nav>
</div>
</header>
<SiteHeader />
{children}
<SiteFooter />
</body>
</html>
);

View File

@@ -107,19 +107,6 @@ export default function Home() {
</ol>
</section>
</main>
<footer className="border-t bg-card/60">
<div className="mx-auto flex w-full max-w-6xl items-center justify-center px-4 py-4 text-center text-xs text-muted-foreground sm:px-8 sm:text-sm">
:
<a
href="https://neody.land/ja"
target="_blank"
rel="noopener noreferrer"
className="ml-1 font-medium text-foreground underline underline-offset-4 hover:text-primary"
>
Neodyland
</a>
</div>
</footer>
</div>
);
}

View File

@@ -0,0 +1,17 @@
export function SiteFooter() {
return (
<footer className="border-t bg-card/60">
<div className="mx-auto flex w-full max-w-6xl items-center justify-center px-4 py-4 text-center text-xs text-muted-foreground sm:px-8 sm:text-sm">
:
<a
href="https://neody.land/ja"
target="_blank"
rel="noopener noreferrer"
className="ml-1 font-medium text-foreground underline underline-offset-4 hover:text-primary"
>
Neodyland
</a>
</div>
</footer>
);
}

View File

@@ -0,0 +1,30 @@
import Link from "next/link";
export function SiteHeader() {
return (
<header className="sticky top-0 z-40 border-b bg-background/85 backdrop-blur motion-safe:animate-in motion-safe:fade-in motion-safe:slide-in-from-top-2 motion-safe:duration-500">
<div className="mx-auto flex w-full max-w-6xl items-center justify-between px-4 py-3 sm:px-8">
<Link
href="/"
className="text-sm font-semibold tracking-tight transition-colors duration-200 hover:text-primary sm:text-base"
>
Takasumi-Neodyマイクラサーバプロジェクト
</Link>
<nav className="flex items-center gap-4 text-sm">
<Link
href="/"
className="underline-offset-4 transition-colors duration-200 hover:text-primary hover:underline"
>
</Link>
<Link
href="/announcements"
className="underline-offset-4 transition-colors duration-200 hover:text-primary hover:underline"
>
</Link>
</nav>
</div>
</header>
);
}