import React, { useState, useEffect } from 'react'; import { useNavigate } from 'react-router-dom'; import Typography from '../components/ui/Typography'; import { Button } from '../components/ui/Button'; import { Card, CardContent } from '../components/ui/Card'; import { FiMessageSquare, FiServer, FiPackage, FiArrowRight, } from 'react-icons/fi'; import { motion } from 'framer-motion'; import { cn } from '../lib/utils'; import { MyAgentsList } from '../components/hcs10/MyAgentsList'; interface HomePageProps {} interface FeatureCard { icon: React.ElementType; title: string; description: string; color: 'purple' | 'blue' | 'green' | 'orange'; link: string; } const HomePage: React.FC = () => { const navigate = useNavigate(); const [activeFeature, setActiveFeature] = useState(0); const features: FeatureCard[] = [ { icon: FiMessageSquare, title: 'Chat', description: 'Talk to the conversational agent', color: 'purple', link: '/chat', }, { icon: FiServer, title: 'MCP Servers', description: 'Configure Model Context Protocol servers', color: 'blue', link: '/mcp', }, { icon: FiPackage, title: 'Plugins', description: 'Install and manage agent plugins', color: 'green', link: '/plugins', }, ]; useEffect(() => { const interval = setInterval(() => { setActiveFeature((prev) => (prev + 1) % features.length); }, 3000); return () => clearInterval(interval); }, []); return (
{[...Array(3)].map((_, i) => ( ))}
HashgraphOnline {'>'} Open Agents for Everyone. {'>'} Status: READY | Network: HEDERA | Mode: AUTONOMOUS
{features.map((feature, index) => { const Icon = feature.icon; const colorClasses = { purple: 'from-hgo-purple to-hgo-blue', blue: 'from-hgo-blue to-hgo-green', green: 'from-hgo-green to-hgo-blue', orange: 'from-hgo-blue to-hgo-purple', }; const isActive = activeFeature === index; return ( navigate(feature.link)} onMouseEnter={() => setActiveFeature(index)} >
{feature.title}
{feature.description}
Open
); })}
); }; export default HomePage;