feat: Michess – Initiales Setup auf Basis von chessu
- Rebranding: chessu → Michess (Header, Footer, Metadata, Session-Cookie) - Stockfish KI-Integration: 6 Schwierigkeitsgrade (Anfänger bis Meister) - Admin-Panel: Nutzerverwaltung, Sperren/Entsperren, Git-Pull-Update - Freundessystem: Anfragen, Freundesliste, Nutzersuche - DB-Schema: role, banned, friend_request, friendship Tabellen - Docker: NAS-optimiertes docker-compose.yml mit PostgreSQL Healthcheck - Stockfish binary via apk im Alpine-Image installiert - .env.example für einfaches Deployment - scripts/update.sh für manuelles NAS-Update - Brain.md + Plan.md als Projekt-Gedächtnis Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,24 +1,54 @@
|
||||
"use client";
|
||||
|
||||
import CreateGame from "@/components/home/CreateGame";
|
||||
import JoinGame from "@/components/home/JoinGame";
|
||||
import PublicGames from "@/components/home/PublicGames/PublicGames";
|
||||
import Link from "next/link";
|
||||
import { useSession } from "@/context/session";
|
||||
|
||||
export const revalidate = 0;
|
||||
|
||||
export default function Home() {
|
||||
const { user } = useSession();
|
||||
|
||||
return (
|
||||
<div className="flex w-full flex-wrap items-center justify-center gap-8 px-4 py-10 lg:gap-16 ">
|
||||
<div className="flex w-full flex-wrap items-start justify-center gap-8 px-4 py-10 lg:gap-16">
|
||||
<PublicGames />
|
||||
|
||||
<div className="flex flex-col items-center gap-4">
|
||||
|
||||
{/* Against AI */}
|
||||
<div className="flex flex-col items-center">
|
||||
<h2 className="mb-4 text-xl font-bold leading-tight">Join from invite</h2>
|
||||
<h2 className="mb-4 text-xl font-bold leading-tight">Gegen KI spielen</h2>
|
||||
<Link href="/ai" className="btn btn-primary w-full max-w-xs">
|
||||
♟ Gegen Stockfish spielen
|
||||
</Link>
|
||||
</div>
|
||||
|
||||
<div className="divider divider-vertical">oder</div>
|
||||
|
||||
{/* Friends */}
|
||||
{user?.id && typeof user.id === "number" && (
|
||||
<>
|
||||
<div className="flex flex-col items-center">
|
||||
<h2 className="mb-4 text-xl font-bold leading-tight">Freunde</h2>
|
||||
<Link href="/friends" className="btn btn-outline w-full max-w-xs">
|
||||
👥 Freunde verwalten
|
||||
</Link>
|
||||
</div>
|
||||
<div className="divider divider-vertical">oder</div>
|
||||
</>
|
||||
)}
|
||||
|
||||
<div className="flex flex-col items-center">
|
||||
<h2 className="mb-4 text-xl font-bold leading-tight">Per Einladung beitreten</h2>
|
||||
<JoinGame />
|
||||
</div>
|
||||
|
||||
<div className="divider divider-vertical">or</div>
|
||||
<div className="divider divider-vertical">oder</div>
|
||||
|
||||
<div className="flex flex-col items-center">
|
||||
<h2 className="mb-4 text-xl font-bold leading-tight">Create game</h2>
|
||||
<h2 className="mb-4 text-xl font-bold leading-tight">Spiel erstellen</h2>
|
||||
<CreateGame />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user