/** * Documentation Hub * Central hub for all design system documentation * Access: /dev/docs */ import { Link } from '@/lib/i18n/routing'; import { BookOpen, Sparkles, Layout, Palette, Code2, FileCode, Accessibility, Lightbulb, Search, } from 'lucide-react'; import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card'; import { Button } from '@/components/ui/button'; import { Badge } from '@/components/ui/badge'; import { DevBreadcrumbs } from '@/components/dev/DevBreadcrumbs'; interface DocItem { title: string; description: string; href: string; icon: React.ReactNode; badge?: string; } const gettingStartedDocs: DocItem[] = [ { title: 'Quick Start', description: '5-minute crash course to get up and running with the design system', href: '/dev/docs/design-system/00-quick-start', icon: , badge: 'Start Here', }, { title: 'README', description: 'Complete overview and learning paths for the design system', href: '/dev/docs/design-system/README', icon: , }, ]; const coreConceptsDocs: DocItem[] = [ { title: 'Foundations', description: 'Colors (OKLCH), typography, spacing, and shadows', href: '/dev/docs/design-system/01-foundations', icon: , }, { title: 'Components', description: 'shadcn/ui component library guide and usage patterns', href: '/dev/docs/design-system/02-components', icon: , }, { title: 'Layouts', description: 'Layout patterns with Grid vs Flex decision trees', href: '/dev/docs/design-system/03-layouts', icon: , }, { title: 'Spacing Philosophy', description: 'Parent-controlled spacing strategy and best practices', href: '/dev/docs/design-system/04-spacing-philosophy', icon: , }, { title: 'Component Creation', description: 'When to create vs compose components', href: '/dev/docs/design-system/05-component-creation', icon: , }, { title: 'Forms', description: 'Form patterns with react-hook-form and Zod validation', href: '/dev/docs/design-system/06-forms', icon: , }, { title: 'Accessibility', description: 'WCAG AA compliance, keyboard navigation, and screen readers', href: '/dev/docs/design-system/07-accessibility', icon: , }, ]; const referencesDocs: DocItem[] = [ { title: 'AI Guidelines', description: 'Rules and best practices for AI code generation', href: '/dev/docs/design-system/08-ai-guidelines', icon: , badge: 'AI', }, { title: 'Quick Reference', description: 'Cheat sheet for quick lookups and common patterns', href: '/dev/docs/design-system/99-reference', icon: , }, ]; export default function DocsHub() { return (
{/* Breadcrumbs */} {/* Hero Section */}

Design System Documentation

Comprehensive guides, best practices, and references for building consistent, accessible, and maintainable user interfaces with the FastNext design system.

{/* Main Content */}
{/* Getting Started Section */}

Getting Started

New to the design system? Start here for a quick introduction.

{gettingStartedDocs.map((doc) => (
{doc.icon}
{doc.title} {doc.badge && ( {doc.badge} )}
{doc.description}
))}
{/* Core Concepts Section */}

Core Concepts

Deep dive into the fundamental concepts and patterns of the design system.

{coreConceptsDocs.map((doc) => (
{doc.icon}
{doc.title}
{doc.description}
))}
{/* References Section */}

References

Quick references and specialized guides for specific use cases.

{referencesDocs.map((doc) => (
{doc.icon}
{doc.title} {doc.badge && ( {doc.badge} )}
{doc.description}
))}
); }