Files
freelancer-match/frontend/app/page.tsx
T

56 lines
2.4 KiB
TypeScript

import Link from "next/link";
import { Button } from "@/components/ui/button";
export default function Home() {
return (
<div className="min-h-screen bg-gradient-to-b from-blue-50 to-white">
{/* Hero */}
<section className="container mx-auto px-4 py-20 text-center">
<h1 className="text-5xl font-bold mb-6">Freelancer Match</h1>
<p className="text-xl text-gray-600 max-w-2xl mx-auto mb-8">
Умная площадка для фрилансеров и заказчиков. AI-подбор, escrow-гарант сделок.
</p>
<div className="flex gap-4 justify-center">
<Button size="lg" asChild>
<Link href="/auth/register?role=freelancer">Начать как фрилансер</Link>
</Button>
<Button variant="outline" size="lg" asChild>
<Link href="/auth/register?role=client">Создать проект</Link>
</Button>
</div>
</section>
{/* Features */}
<section className="container mx-auto px-4 py-16 grid md:grid-cols-3 gap-8">
{[
{ title: "AI-матчинг", desc: "Умный подбор фрилансеров по навыкам и опыту" },
{ title: "Escrow-гарант", desc: "Безопасные сделки с защитой обеих сторон" },
{ title: "Рейтинги", desc: "Прозрачные отзывы и система доверия" },
].map((f) => (
<div key={f.title} className="p-6 rounded-xl bg-white shadow-sm">
<h3 className="text-lg font-semibold mb-2">{f.title}</h3>
<p className="text-gray-600">{f.desc}</p>
</div>
))}
</section>
{/* Stats */}
<section className="container mx-auto px-4 py-16 text-center">
<div className="grid grid-cols-3 gap-8">
{[["10K+", "Фрилансеров"], ["50M₽", "Обработано сделок"], ["98%", "Довольных клиентов"]].map(([num, label]) => (
<div key={num}>
<div className="text-3xl font-bold">{num}</div>
<div className="text-gray-600">{label}</div>
</div>
))}
</div>
</section>
{/* Footer */}
<footer className="border-t py-8 text-center text-gray-500">
© 2026 Freelancer Match. Все права защищены.
</footer>
</div>
);
}