import { useEffect, useState } from 'react'; import { motion } from 'framer-motion'; import { checkHealth, type HealthStatus } from '@/api'; import { ShowcaseFlow } from '@/components/ShowcaseFlow'; function StatusDot({ ok }: { ok: boolean }) { return ( ); } export default function App() { const [health, setHealth] = useState(null); const [healthOk, setHealthOk] = useState(false); useEffect(() => { checkHealth() .then((h) => { setHealth(h); setHealthOk(h.status === 'healthy'); }) .catch(() => { setHealth(null); setHealthOk(false); }); }, []); return ( AI launch suite Product Showcase Studio Transform a product URL into premium ad videos with AI concept ideation, shot planning, keyframe guidance, and one-click master cuts. AI planning Concept engine Fast render stack {health && ( <> API {healthOk ? 'live' : 'unreachable'} KIE {health.replicate_configured && ( Replicate )} OpenAI {health.ffmpeg_available === false && ( FFmpeg missing )} > )} ); }
Transform a product URL into premium ad videos with AI concept ideation, shot planning, keyframe guidance, and one-click master cuts.