'use client'; import { useState } from 'react'; import { Box, Container, Typography, TextField, Button, Stack, Alert, Snackbar } from '@mui/material'; import AutoAwesome from '@mui/icons-material/AutoAwesome'; import CheckCircle from '@mui/icons-material/CheckCircle'; import Image from 'next/image'; export default function ComingSoonPage() { const [email, setEmail] = useState(''); const [loading, setLoading] = useState(false); const [success, setSuccess] = useState(false); const [error, setError] = useState(''); const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); if (!email) return; setLoading(true); setError(''); try { const response = await fetch('/api/waitlist', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ email }), }); if (response.ok) { setSuccess(true); setEmail(''); } else { const data = await response.json(); setError(data.error || 'Something went wrong'); } } catch (err) { setError('Failed to join waitlist'); } finally { setLoading(false); } }; return ( {/* Animated background shapes */} {/* Logo */} This Fit Tho {/* Tagline */} Try outfits on your real body with AI. Get friend feedback. Remix until it hits. {/* Coming Soon Badge */} Coming Soon {/* Features Preview */} {[ { emoji: '📸', text: 'Upload your photo' }, { emoji: '👗', text: 'Add clothes from anywhere' }, { emoji: '✨', text: 'AI renders your fit' }, { emoji: '🔥', text: 'Get reactions' }, ].map((feature, index) => ( {feature.emoji} {feature.text} ))} {/* Email Signup */} Be the first to know when we launch
setEmail(e.target.value)} disabled={loading || success} sx={{ '& .MuiOutlinedInput-root': { borderRadius: 2, }, }} /> {error && ( {error} )}
No spam. We'll only email when we launch.
{/* Social Proof */} 500+ Early signups 2025 Launch year Free To start {/* Footer */} © 2025 This Fit Tho. All rights reserved.
{/* Success Snackbar */} setSuccess(false)} anchorOrigin={{ vertical: 'bottom', horizontal: 'center' }} > Welcome to the waitlist! We'll notify you when we launch.
); }