import { Header } from ‘@/components/landing/Header’; import { Hero } from ‘@/components/landing/Hero’; import { Benefits } from ‘@/components/landing/Benefits’; import { PreQualifyForm } from ‘@/components/landing/PreQualifyForm’; import { Trust } from ‘@/components/landing/Trust’; import { FAQ } from ‘@/components/landing/FAQ’; import { Footer } from ‘@/components/landing/Footer’; export default function Home() { return (
); } // ==================================================================================== // FILE: src/components/landing/Header.tsx // ==================================================================================== import Link from ‘next/link’; import { Landmark } from ‘lucide-react’; import { Button } from ‘@/components/ui/button’; export function Header() { return (
LoanHero
); } // ==================================================================================== // FILE: src/components/landing/Hero.tsx // ==================================================================================== “use client”; import { Button } from ‘@/components/ui/button’; import { motion } from ‘framer-motion’; export function Hero() { return (

Get Fast Easy Online Loans Today

Secure, swift, and simple. Your financial goals are just a few clicks away.

); } // ==================================================================================== // FILE: src/components/landing/Benefits.tsx // ==================================================================================== import { Card, CardHeader, CardTitle, CardDescription } from “@/components/ui/card”; import { Clock, ShieldCheck, TrendingUp } from “lucide-react”; const benefits = [ { icon: , title: “Quick Approval”, description: “Get your loan application approved in minutes, not days. Our streamlined process gets you the funds you need, faster.”, }, { icon: , title: “Flexible Repayment”, description: “Choose a repayment plan that fits your budget. We offer flexible terms to make your loan manageable.”, }, { icon: , title: “Secure & Trusted”, description: “Your data is protected with bank-level security. We are a trusted partner for your financial needs.”, }, ]; export function Benefits() { return (

The LoanHero Advantage

Experience a refreshingly simple and fair borrowing process.

{benefits.map((benefit, index) => ( {benefit.icon} {benefit.title} {benefit.description} ))}
); } // ==================================================================================== // FILE: src/components/landing/PreQualifyForm.tsx // ==================================================================================== “use client”; import { useFormState, useFormStatus } from “react-dom”; import { submitApplication } from “@/lib/actions”; import { Card, CardContent, CardDescription, CardHeader, CardTitle } from “@/components/ui/card”; import { Label } from “@/components/ui/label”; import { Input } from “@/components/ui/input”; import { Button } from “@/components/ui/button”; import { useEffect, useRef } from “react”; import { useToast } from “@/hooks/use-toast”; const initialState = { message: “”, errors: {}, }; function SubmitButton() { const { pending } = useFormStatus(); return ( ); } export function PreQualifyForm() { const [state, formAction] = useFormState(submitApplication, initialState); const { toast } = useToast(); const formRef = useRef(null); useEffect(() => { if (state?.message && !state.errors) { toast({ title: “Success!”, description: state.message, }); formRef.current?.reset(); } else if (state?.message && state.errors && Object.keys(state.errors).length > 0) { const errorMessages = Object.values(state.errors).flat().join(“\n”); toast({ title: “Submission Error”, description: errorMessages || state.message, variant: “destructive”, }); } }, [state, toast]); return (
Pre-qualify in Minutes Fill out the form below to see what you may qualify for. No impact on your credit score.
{state?.errors?.name &&

{state.errors.name[0]}

}
{state?.errors?.email &&

{state.errors.email[0]}

}
{state?.errors?.phone &&

{state.errors.phone[0]}

}
{state?.errors?.amount &&

{state.errors.amount[0]}

}
); } // ==================================================================================== // FILE: src/components/landing/Trust.tsx // ==================================================================================== import { Avatar, AvatarFallback, AvatarImage } from “@/components/ui/avatar”; import { Card, CardContent, CardHeader, CardTitle } from “@/components/ui/card”; import { PlaceHolderImages } from “@/lib/placeholder-images”; import { Award, Gem, ShieldCheck, Star } from “lucide-react”; const testimonials = [ { id: “testimonial-1”, name: “Sarah L.”, role: “Small Business Owner”, text: “The process was incredibly fast and easy. I got the funding I needed for my business in just 24 hours. Highly recommended!”, avatar: PlaceHolderImages.find(p => p.id === ‘testimonial-1’)?.imageUrl, avatarHint: PlaceHolderImages.find(p => p.id === ‘testimonial-1’)?.imageHint, }, { id: “testimonial-2”, name: “Mike R.”, role: “Homeowner”, text: “I was able to consolidate my debt with a personal loan from LoanHero. The flexible repayment terms made it so manageable. A lifesaver!”, avatar: PlaceHolderImages.find(p => p.id === ‘testimonial-2’)?.imageUrl, avatarHint: PlaceHolderImages.find(p => p.id === ‘testimonial-2’)?.imageHint, }, { id: “testimonial-3”, name: “Jessica P.”, role: “Freelancer”, text: “As a freelancer with fluctuating income, getting a loan used to be a hassle. LoanHero understood my situation and provided a great solution.”, avatar: PlaceHolderImages.find(p => p.id === ‘testimonial-3’)?.imageUrl, avatarHint: PlaceHolderImages.find(p => p.id === ‘testimonial-3’)?.imageHint, }, ]; const trustBadges = [ { icon: , text: “Bank-Level Security” }, { icon: , text: “Industry-Best Rates” }, { icon: , text: “Trusted by Thousands” }, ] export function Trust() { return (

Why Thousands Trust LoanHero

We’re committed to providing a transparent, secure, and supportive borrowing experience.

{testimonials.map((testimonial) => (
{testimonial.avatar && } {testimonial.name.charAt(0)}
{testimonial.name}

{testimonial.role}

{[…Array(5)].map((_, i) => )}

“{testimonial.text}”

))}
{trustBadges.map((badge, index) => (
{badge.icon}

{badge.text}

))}
); } // ==================================================================================== // FILE: src/components/landing/FAQ.tsx // ==================================================================================== import { Accordion, AccordionContent, AccordionItem, AccordionTrigger } from “@/components/ui/accordion”; const faqs = [ { question: “What are the eligibility requirements?”, answer: “To be eligible for a loan, you must be at least 18 years old, a citizen or permanent resident of the country, have a regular source of income, and a valid bank account. Specific requirements may vary by loan type.”, }, { question: “What are the interest rates and fees?”, answer: “Our interest rates are competitive and vary based on your loan amount, term, and credit profile. We are fully transparent about all fees, which will be clearly outlined in your loan agreement. There are no hidden charges.”, }, { question: “How long does the approval process take?”, answer: “Our pre-qualification form takes just minutes to complete. Once you submit a full application, most decisions are made within one business day. Funds are typically deposited into your account within 1-2 business days after approval.”, }, { question: “How does the loan process work?”, answer: “It’s a simple 3-step process: 1) Fill out our secure online form. 2) Review your loan offers and choose the best one for you. 3) E-sign your documents and receive your funds directly in your bank account.”, }, ]; export function FAQ() { return (

Frequently Asked Questions

Have questions? We’ve got answers.

{faqs.map((faq, index) => ( {faq.question} {faq.answer} ))}
); } // ==================================================================================== // FILE: src/components/landing/Footer.tsx // ==================================================================================== import Link from ‘next/link’; import { Landmark } from ‘lucide-react’; export function Footer() { return (
LoanHero

© {new Date().getFullYear()} All rights reserved.

Terms of Service Privacy Policy
); }