"use client"; import { motion } from "framer-motion"; import Link from "next/link"; import { Globe, Smartphone, ArrowLeft } from "lucide-react"; import { use } from "react"; const categories = { web: { title: "Web Systems", icon: , description: "Architecting scalable web applications and distributed systems.", projects: [ { name: "Ratoong", detail: "Professional production platform.", stack: ["Node.js", "PostgreSQL", "Caddy"] }, { name: "Datasaur", detail: "Full-stack data science pipeline.", stack: ["Python", "FastAPI", "Next.js"] } ] }, mobile: { title: "Mobile Apps", icon: , description: "Building cross-platform experiences with Flutter and native integrations.", projects: [ { name: "Flutter App 1", detail: "Active Development - Coming Soon", stack: ["Flutter", "Dart", "Firebase"] }, { name: "Flutter App 2", detail: "Internal R&D Prototype", stack: ["Flutter", "Riverpod", "SQLite"] } ] } }; export default function CategoryPage({ params }: { params: Promise<{ category: string }> }) { const resolvedParams = use(params); const category = resolvedParams.category; const data = categories[category as keyof typeof categories]; if (!data) return
Category not found.
; if (!data) { return (

404: Category Not Found

Path: /projects/{category}

Return Home
); } return (
BACK TO DASHBOARD
{data.icon}

{data.title}

{data.description}

{data.projects.map((project, index) => (

{project.name}

{project.detail}

{project.stack.map(s => ( {s} ))}
))}
); }