forge/frontend/components/ModuleCard.tsx
DJP 7a804e896d Initial commit - FORGE AI unified platform
Features:
- Image generation (OpenAI, Gemini, Leonardo, Bria, Stability, Flux)
- Nano Banana iterative editing
- Video generation and upscaling
- Audio TTS, STT, sound effects (ElevenLabs)
- Text prompt studio and alt text
- User authentication with JWT/cookies
- Admin panel with voice management
- Job queue with Celery
- PostgreSQL + Redis backend
- Next.js 15 + FastAPI architecture

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com>
2025-12-09 20:39:00 -05:00

30 lines
773 B
TypeScript

'use client';
import Link from 'next/link';
import { LucideIcon } from 'lucide-react';
interface ModuleCardProps {
title: string;
description: string;
icon: LucideIcon;
href: string;
color?: string;
}
export default function ModuleCard({
title,
description,
icon: Icon,
href,
color = 'forge-yellow',
}: ModuleCardProps) {
return (
<Link href={href} className="module-card group">
<div className={`w-12 h-12 bg-${color}/10 rounded-lg flex items-center justify-center mb-4 group-hover:bg-${color}/20 transition-colors`}>
<Icon className={`w-6 h-6 text-${color}`} />
</div>
<h3 className="text-lg font-semibold text-white mb-2">{title}</h3>
<p className="text-gray-400 text-sm">{description}</p>
</Link>
);
}