"use client"; import { Heart, MessageCircle, Share2, Filter } from "lucide-react"; import { useState } from "react"; function generateRoleplayCharacters() { const categories = ["Fantasy", "Sci-Fi", "Romance", "Mystery", "Adventure"]; const baseCharacters = [ { name: "Luna", avatar: "🌙", category: "Fantasy" }, { name: "Alex", avatar: "⚡", category: "Sci-Fi" }, { name: "Sage", avatar: "🧙", category: "Fantasy" }, { name: "Nova", avatar: "✨", category: "Sci-Fi" }, { name: "Echo", avatar: "🔮", category: "Mystery" }, { name: "Storm", avatar: "⛈️", category: "Adventure" }, ]; return Array.from({ length: 12 }, (_, i) => { const char = baseCharacters[i % baseCharacters.length]; return { id: i + 1, ...char, messages: Math.floor(Math.random() * 500) + 50, likes: Math.floor(Math.random() * 1000) + 100, }; }); } export default function RoleplayPage() { const [selectedCategory, setSelectedCategory] = useState(null); const characters = generateRoleplayCharacters(); const categories = ["Fantasy", "Sci-Fi", "Romance", "Mystery", "Adventure"]; const filtered = selectedCategory ? characters.filter((c) => c.category === selectedCategory) : characters; return (
{/* Header */}

Roleplay

Immersive roleplay experiences

{/* Category Filter */}
{categories.map((cat) => ( ))}
{/* Grid */}
{filtered.map((char) => (
{/* Character Card */}
{char.avatar}
{char.category}
{/* Content */}

{char.name}

{char.category} Character

{/* Stats */}
{char.messages}
{char.likes}
{/* Actions */}
))}
{filtered.length === 0 && (

No characters found in this category

)}
); }