'use client' import { useState } from 'react' import Link from 'next/link' import { useRouter } from 'next/navigation' import { createClient } from '@/lib/supabase/client' import { Button } from '@/components/ui/button' import { Input } from '@/components/ui/input' import { Label } from '@/components/ui/label' import { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from '@/components/ui/card' import { Bot, Loader2 } from 'lucide-react' export default function SignupPage() { const router = useRouter() const [email, setEmail] = useState('') const [fullName, setFullName] = useState('') const [password, setPassword] = useState('') const [confirmPassword, setConfirmPassword] = useState('') const [isLoading, setIsLoading] = useState(false) const [error, setError] = useState(null) const handleSignup = async (e: React.FormEvent) => { e.preventDefault() setError(null) if (password !== confirmPassword) { setError('Passwords do not match') return } if (password.length < 6) { setError('Password must be at least 6 characters') return } setIsLoading(true) const supabase = createClient() const { error } = await supabase.auth.signUp({ email, password, options: { data: { full_name: fullName, }, }, }) if (error) { setError(error.message) setIsLoading(false) return } router.push('/dashboard') } return (
Mylder Create your account Start building with AI in minutes
setFullName(e.target.value)} required disabled={isLoading} />
setEmail(e.target.value)} required disabled={isLoading} />
setPassword(e.target.value)} required disabled={isLoading} />
setConfirmPassword(e.target.value)} required disabled={isLoading} />
{error && (

{error}

)}

Already have an account?{' '} Log in

) }