diff --git a/client/components/docs/ResourceSectionsGrid.tsx b/client/components/docs/ResourceSectionsGrid.tsx new file mode 100644 index 00000000..a52a8d13 --- /dev/null +++ b/client/components/docs/ResourceSectionsGrid.tsx @@ -0,0 +1,136 @@ +import { + Card, + CardContent, + CardDescription, + CardHeader, + CardTitle, +} from "@/components/ui/card"; +import { Badge } from "@/components/ui/badge"; +import { Link } from "react-router-dom"; +import { ArrowRight, LucideIcon, Video, Code, FileText, Puzzle, LayoutDashboard } from "lucide-react"; + +export interface ResourceSection { + title: string; + description: string; + icon: LucideIcon; + href: string; + items: string[]; + badge: string; +} + +const defaultSections: ResourceSection[] = [ + { + title: "Tutorials & Guides", + description: "Step-by-step tutorials and comprehensive guides", + icon: Video, + href: "/docs/tutorials", + items: [ + "Platform Quick Start", + "Game Development", + "AI Integration", + "Performance Optimization", + ], + badge: "6 tutorials", + }, + { + title: "Platform Experience", + description: "Understand dashboard, passport, and collaboration spaces", + icon: LayoutDashboard, + href: "/docs/platform", + items: ["Dashboard", "Passport", "Community", "Mentorship"], + badge: "New", + }, + { + title: "API Reference", + description: "Complete API documentation with examples", + icon: Code, + href: "/docs/api", + items: ["Authentication", "Project Management", "User APIs", "Webhooks"], + badge: "40+ endpoints", + }, + { + title: "Examples", + description: "Ready-to-use code examples and templates", + icon: FileText, + href: "/docs/examples", + items: [ + "React Components", + "Game Templates", + "API Integration", + "Deployment Scripts", + ], + badge: "25+ examples", + }, + { + title: "Integrations", + description: "Embed partner tooling and automate external workflows", + icon: Puzzle, + href: "/docs/integrations", + items: [ + "HelloSkip agent", + "Theming hooks", + "Status preflights", + "Troubleshooting", + ], + badge: "Updated", + }, +]; + +interface ResourceSectionsGridProps { + sections?: ResourceSection[]; +} + +export default function ResourceSectionsGrid({ + sections = defaultSections, +}: ResourceSectionsGridProps) { + return ( +
+

+ Documentation Sections +

+
+ {sections.map((section, index) => { + const Icon = section.icon; + return ( + + + +
+ + {section.badge} +
+ + {section.title} + + + {section.description} + +
+ +
    + {section.items.map((item, itemIndex) => ( +
  • + + {item} +
  • + ))} +
+
+ Explore section + +
+
+ +
+ ); + })} +
+
+ ); +}