"use client"; import Link from "next/link"; import { useState } from "react"; import { useRouter } from "next/navigation"; import { appConfig } from '@/config/app.config'; import { toast } from "sonner"; // Import shared components import { Connector } from "@/components/shared/layout/curvy-rect"; import HeroFlame from "@/components/shared/effects/flame/hero-flame"; import AsciiExplosion from "@/components/shared/effects/flame/ascii-explosion"; import { HeaderProvider } from "@/components/shared/header/HeaderContext"; // Import hero section components import HomeHeroBackground from "@/components/app/(home)/sections/hero/Background/Background"; import { BackgroundOuterPiece } from "@/components/app/(home)/sections/hero/Background/BackgroundOuterPiece"; import HomeHeroBadge from "@/components/app/(home)/sections/hero/Badge/Badge"; import HomeHeroPixi from "@/components/app/(home)/sections/hero/Pixi/Pixi"; import HomeHeroTitle from "@/components/app/(home)/sections/hero/Title/Title"; import HeroInputSubmitButton from "@/components/app/(home)/sections/hero-input/Button/Button"; import Globe from "@/components/app/(home)/sections/hero-input/_svg/Globe"; // Import header components import HeaderBrandKit from "@/components/shared/header/BrandKit/BrandKit"; import HeaderWrapper from "@/components/shared/header/Wrapper/Wrapper"; import HeaderDropdownWrapper from "@/components/shared/header/Dropdown/Wrapper/Wrapper"; import GithubIcon from "@/components/shared/header/Github/_svg/GithubIcon"; import ButtonUI from "@/components/ui/shadcn/button" export default function HomePage() { const [url, setUrl] = useState(""); const [selectedStyle, setSelectedStyle] = useState("modern"); const [selectedModel, setSelectedModel] = useState(appConfig.ai.defaultModel); const router = useRouter(); const styles = [ { id: "modern", name: "Modern", description: "Clean and minimalist" }, { id: "playful", name: "Playful", description: "Fun and colorful" }, { id: "professional", name: "Professional", description: "Corporate and sleek" }, { id: "artistic", name: "Artistic", description: "Creative and unique" }, ]; const models = appConfig.ai.availableModels.map(model => ({ id: model, name: model.includes('claude') ? `Claude ${model.split('-')[2]}` : model.includes('gpt') ? `GPT-${model.split('-')[1]}` : model, })); const handleSubmit = () => { if (!url.trim()) { toast.error("Please enter a URL"); return; } // Store the configuration in sessionStorage sessionStorage.setItem('targetUrl', url); sessionStorage.setItem('selectedStyle', selectedStyle); sessionStorage.setItem('selectedModel', selectedModel); // Redirect to the generation interface router.push('/generation'); }; return (
{/* Header/Navigation Section */}
{/* Hero Section */}

Re-imagine any website, in seconds.

e.preventDefault()} > Powered by Firecrawl.
{/* Mini Playground Input */}
{/* Hero Input Component */}
setUrl(e.target.value)} onKeyDown={(e) => { if (e.key === "Enter") { e.preventDefault(); handleSubmit(); } }} />
{ e.preventDefault(); handleSubmit(); }} > 0} />
{/* Options Section */} {url.length > 0 && (
{/* Model Selector */}
{models.map((model) => ( ))}
{/* Style Selector */}
{styles.map((style) => ( ))}
)}
); }