Merge version_2 into main #1
267
src/app/page.tsx
267
src/app/page.tsx
@@ -31,70 +31,46 @@ export default function LandingPage() {
|
||||
<NavbarLayoutFloatingOverlay
|
||||
navItems={[
|
||||
{
|
||||
name: "Головна",
|
||||
id: "hero",
|
||||
},
|
||||
name: "Головна", id: "hero"},
|
||||
{
|
||||
name: "Ліги",
|
||||
id: "leagues",
|
||||
},
|
||||
name: "Ліги", id: "leagues"},
|
||||
{
|
||||
name: "Матчі",
|
||||
id: "matches",
|
||||
},
|
||||
name: "Матчі", id: "matches"},
|
||||
{
|
||||
name: "Аналітика",
|
||||
id: "blog",
|
||||
},
|
||||
name: "Аналітика", id: "blog"},
|
||||
{
|
||||
name: "Таблиці",
|
||||
id: "tables",
|
||||
},
|
||||
name: "Таблиці", id: "tables"},
|
||||
]}
|
||||
brandName="ВЕРТИКАЛЬ"
|
||||
brandName="SOCCERAI"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="hero" data-section="hero">
|
||||
<HeroOverlay
|
||||
title="Реал — Барселона. Ель Класіко вирішить чемпіонат."
|
||||
description="Аналіз головного матчу дня: тактичні битви, прогнози та значення результату для турнірної таблиці."
|
||||
tag="01 · СЬОГОДНІ 27 КВІТНЯ"
|
||||
title="SoccerAI — Штучний інтелект у футболі."
|
||||
description="Прогнози, тактичний аналіз та глибока футбольна аналітика на базі даних."
|
||||
tag="01 · SOCCERAI.UA"
|
||||
buttons={[
|
||||
{
|
||||
text: "Читати аналіз →",
|
||||
href: "#blog",
|
||||
},
|
||||
text: "Читати аналіз →", href: "#blog"},
|
||||
{
|
||||
text: "Усі матчі дня",
|
||||
href: "#matches",
|
||||
},
|
||||
text: "Усі матчі дня", href: "#matches"},
|
||||
]}
|
||||
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318298549-5d43f38e.png"
|
||||
showBlur={true}
|
||||
avatars={[
|
||||
{
|
||||
src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318314019-76e63b14.png",
|
||||
alt: "fan 1",
|
||||
},
|
||||
src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318314019-76e63b14.png", alt: "fan 1"},
|
||||
{
|
||||
src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318323518-38e52b38.png",
|
||||
alt: "fan 2",
|
||||
},
|
||||
src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318323518-38e52b38.png", alt: "fan 2"},
|
||||
{
|
||||
src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318332199-269d644c.png",
|
||||
alt: "fan 3",
|
||||
},
|
||||
src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318332199-269d644c.png", alt: "fan 3"},
|
||||
{
|
||||
src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318341239-af625bf8.png",
|
||||
alt: "fan 4",
|
||||
},
|
||||
src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318341239-af625bf8.png", alt: "fan 4"},
|
||||
{
|
||||
src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318350468-9883105d.png",
|
||||
alt: "fan 5",
|
||||
},
|
||||
src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318350468-9883105d.png", alt: "fan 5"},
|
||||
]}
|
||||
avatarText="10k+ фанатів з нами"
|
||||
avatarText="10k+ користувачів SoccerAI"
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -105,24 +81,14 @@ export default function LandingPage() {
|
||||
useInvertedBackground={false}
|
||||
negativeCard={{
|
||||
items: [
|
||||
"УПЛ",
|
||||
"Серія А",
|
||||
"Ла Ліга",
|
||||
"Ередівізі",
|
||||
"Ліга 1",
|
||||
],
|
||||
"УПЛ", "Серія А", "Ла Ліга", "Ередівізі", "Ліга 1"],
|
||||
}}
|
||||
positiveCard={{
|
||||
items: [
|
||||
"АПЛ",
|
||||
"Бундесліга",
|
||||
"ЛЧ",
|
||||
"Лібертадорес",
|
||||
"Прімейра-ліга",
|
||||
],
|
||||
"АПЛ", "Бундесліга", "ЛЧ", "Лібертадорес", "Прімейра-ліга"],
|
||||
}}
|
||||
title="Великі чемпіонати"
|
||||
description="Слідкуйте за лідерами шести головних футбольних турнірів світу."
|
||||
title="Підключені чемпіонати"
|
||||
description="Моніторимо дані у реальному часі для топ-ліг Європи та світу."
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -134,44 +100,20 @@ export default function LandingPage() {
|
||||
useInvertedBackground={true}
|
||||
products={[
|
||||
{
|
||||
id: "m1",
|
||||
name: "LIVE: Arsenal vs Chelsea",
|
||||
price: "2:1",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318314019-76e63b14.png",
|
||||
},
|
||||
id: "m1", name: "LIVE: Arsenal vs Chelsea", price: "2:1", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318314019-76e63b14.png"},
|
||||
{
|
||||
id: "m2",
|
||||
name: "UPCOMING: Real vs Barca",
|
||||
price: "21:00",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318323518-38e52b38.png",
|
||||
},
|
||||
id: "m2", name: "UPCOMING: Real vs Barca", price: "21:00", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318323518-38e52b38.png"},
|
||||
{
|
||||
id: "m3",
|
||||
name: "FINISHED: Milan vs Inter",
|
||||
price: "1:1",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318332199-269d644c.png",
|
||||
},
|
||||
id: "m3", name: "FINISHED: Milan vs Inter", price: "1:1", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318332199-269d644c.png"},
|
||||
{
|
||||
id: "m4",
|
||||
name: "LIVE: Bayern vs Dortmund",
|
||||
price: "0:0",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318341239-af625bf8.png",
|
||||
},
|
||||
id: "m4", name: "LIVE: Bayern vs Dortmund", price: "0:0", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318341239-af625bf8.png"},
|
||||
{
|
||||
id: "m5",
|
||||
name: "UPCOMING: Shakhtar vs Dynamo",
|
||||
price: "19:00",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318350468-9883105d.png",
|
||||
},
|
||||
id: "m5", name: "UPCOMING: Shakhtar vs Dynamo", price: "19:00", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318350468-9883105d.png"},
|
||||
{
|
||||
id: "m6",
|
||||
name: "LIVE: Man City vs Liverpool",
|
||||
price: "1:2",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318359189-9058e646.png",
|
||||
},
|
||||
id: "m6", name: "LIVE: Man City vs Liverpool", price: "1:2", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318359189-9058e646.png"},
|
||||
]}
|
||||
title="Розклад матчів"
|
||||
description="Актуальні трансляції та завершені матчі дня."
|
||||
description="Актуальні дані та прогнози від SoccerAI."
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -180,39 +122,15 @@ export default function LandingPage() {
|
||||
animationType="slide-up"
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={false}
|
||||
title="Аналітика тижня"
|
||||
description="Редакційні матеріали про тактику, гравців та ключові події."
|
||||
title="Аналітика SoccerAI"
|
||||
description="ШІ-аналіз тактики та продуктивності гравців."
|
||||
blogs={[
|
||||
{
|
||||
id: "b1",
|
||||
category: "Тактика",
|
||||
title: "Чому Інтер виграє через лівий фланг",
|
||||
excerpt: "Детальний розбір гри італійського клубу.",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318368125-df4f64cb.png",
|
||||
authorName: "Андрій Лисенко",
|
||||
authorAvatar: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318376759-930b912d.png",
|
||||
date: "27 Квітня",
|
||||
},
|
||||
id: "b1", category: "Тактика", title: "Чому Інтер виграє через лівий фланг", excerpt: "Детальний розбір гри від наших алгоритмів.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318368125-df4f64cb.png", authorName: "SoccerAI Team", authorAvatar: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318376759-930b912d.png", date: "27 Квітня"},
|
||||
{
|
||||
id: "b2",
|
||||
category: "ЛЧ",
|
||||
title: "Шахтар у Лізі чемпіонів",
|
||||
excerpt: "Аналіз шансів на плей-оф.",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318384749-74ecc312.png",
|
||||
authorName: "Андрій Лисенко",
|
||||
authorAvatar: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318394196-6cceac7e.png",
|
||||
date: "27 Квітня",
|
||||
},
|
||||
id: "b2", category: "ЛЧ", title: "Шахтар у Лізі чемпіонів", excerpt: "Аналіз шансів на плей-оф від ШІ.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318384749-74ecc312.png", authorName: "SoccerAI Team", authorAvatar: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318394196-6cceac7e.png", date: "27 Квітня"},
|
||||
{
|
||||
id: "b3",
|
||||
category: "Класіко",
|
||||
title: "Ель Класіко вирішить чемпіонат",
|
||||
excerpt: "Ключові фактори успіху.",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318402172-02e74786.png",
|
||||
authorName: "Андрій Лисенко",
|
||||
authorAvatar: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318411827-14fb6198.png",
|
||||
date: "27 Квітня",
|
||||
},
|
||||
id: "b3", category: "Класіко", title: "Ель Класіко: аналітика результату", excerpt: "Ключові фактори, що вирішать матч.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318402172-02e74786.png", authorName: "SoccerAI Team", authorAvatar: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318411827-14fb6198.png", date: "27 Квітня"},
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
@@ -224,50 +142,32 @@ export default function LandingPage() {
|
||||
useInvertedBackground={true}
|
||||
plans={[
|
||||
{
|
||||
id: "pl1",
|
||||
name: "Англія (АПЛ)",
|
||||
price: "1. Man City",
|
||||
features: [
|
||||
"30 М",
|
||||
"75 О",
|
||||
],
|
||||
id: "pl1", name: "АПЛ - SoccerAI", price: "1. Man City", features: [
|
||||
"30 М - Індекс 98", "75 О"],
|
||||
buttons: [
|
||||
{
|
||||
text: "Деталі →",
|
||||
},
|
||||
text: "Дані ШІ →"},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: "pl2",
|
||||
name: "Україна (УПЛ)",
|
||||
price: "1. Shakhtar",
|
||||
features: [
|
||||
"25 М",
|
||||
"60 О",
|
||||
],
|
||||
id: "pl2", name: "УПЛ - SoccerAI", price: "1. Shakhtar", features: [
|
||||
"25 М - Індекс 92", "60 О"],
|
||||
buttons: [
|
||||
{
|
||||
text: "Деталі →",
|
||||
},
|
||||
text: "Дані ШІ →"},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: "pl3",
|
||||
name: "Європа (ЛЧ)",
|
||||
price: "Група A",
|
||||
features: [
|
||||
"1. Real",
|
||||
"2. Bayern",
|
||||
],
|
||||
id: "pl3", name: "ЛЧ - SoccerAI", price: "Група A", features: [
|
||||
"1. Real (Індекс 95)", "2. Bayern (Індекс 94)"],
|
||||
buttons: [
|
||||
{
|
||||
text: "Деталі →",
|
||||
},
|
||||
text: "Дані ШІ →"},
|
||||
],
|
||||
},
|
||||
]}
|
||||
title="Турнірні таблиці"
|
||||
description="Поточне становище клубів у топ-лігах."
|
||||
title="Турнірні таблиці (Аналітика ШІ)"
|
||||
description="Рейтинги SoccerAI для топ-ліг світу."
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -279,26 +179,14 @@ export default function LandingPage() {
|
||||
useInvertedBackground={false}
|
||||
members={[
|
||||
{
|
||||
id: "p1",
|
||||
name: "КІЛІАН МБАППЕ",
|
||||
role: "Форвард",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318420516-38494008.png",
|
||||
},
|
||||
id: "p1", name: "КІЛІАН МБАППЕ", role: "SoccerAI Player Rating: 9.8", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318420516-38494008.png"},
|
||||
{
|
||||
id: "p2",
|
||||
name: "РОДРІ",
|
||||
role: "Півзахисник",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318429467-ee2d1ce3.png",
|
||||
},
|
||||
id: "p2", name: "РОДРІ", role: "SoccerAI Player Rating: 9.7", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318429467-ee2d1ce3.png"},
|
||||
{
|
||||
id: "p3",
|
||||
name: "ВІНІСІУС ЖУНІОР",
|
||||
role: "Форвард",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318437064-85ddbb5e.png",
|
||||
},
|
||||
id: "p3", name: "ВІНІСІУС ЖУНІОР", role: "SoccerAI Player Rating: 9.6", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318437064-85ddbb5e.png"},
|
||||
]}
|
||||
title="Гравець тижня"
|
||||
description="Видатні персоналії, що змінили хід турніру."
|
||||
title="Топ гравці тижня"
|
||||
description="Персональні рейтинги SoccerAI, розраховані на основі виступів."
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -306,11 +194,10 @@ export default function LandingPage() {
|
||||
<ContactSplit
|
||||
useInvertedBackground={true}
|
||||
background={{
|
||||
variant: "animated-grid",
|
||||
}}
|
||||
tag="ПІДПИСКА"
|
||||
title="Один лист на день. Усе важливе про футбол."
|
||||
description="Без спаму. Без банерів. Найкращі матеріали Вертикалі — щоранку о 8:00."
|
||||
variant: "animated-grid"}}
|
||||
tag="ПІДПИСКА SOCCERAI"
|
||||
title="Прогнози SoccerAI на кожен день."
|
||||
description="Отримуйте аналітичні звіти SoccerAI прямо на пошту. Найкращі дані про футбол щодня о 8:00."
|
||||
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318446374-91044ba8.png"
|
||||
/>
|
||||
</div>
|
||||
@@ -318,62 +205,42 @@ export default function LandingPage() {
|
||||
<div id="footer" data-section="footer">
|
||||
<FooterMedia
|
||||
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cu4cynX5F1PL6QWXHEHSufvdF9/professional-editorial-football-photogra-1777318455778-bc197089.png"
|
||||
logoText="ВЕРТИКАЛЬ"
|
||||
logoText="SOCCERAI"
|
||||
columns={[
|
||||
{
|
||||
title: "Ліги",
|
||||
items: [
|
||||
title: "Ліги", items: [
|
||||
{
|
||||
label: "АПЛ",
|
||||
href: "#",
|
||||
},
|
||||
label: "АПЛ", href: "#"},
|
||||
{
|
||||
label: "ЛЧ",
|
||||
href: "#",
|
||||
},
|
||||
label: "ЛЧ", href: "#"},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Контент",
|
||||
items: [
|
||||
title: "Аналітика", items: [
|
||||
{
|
||||
label: "Аналітика",
|
||||
href: "#",
|
||||
},
|
||||
label: "Прогнози", href: "#"},
|
||||
{
|
||||
label: "Новини",
|
||||
href: "#",
|
||||
},
|
||||
label: "Рейтинги", href: "#"},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Сервіси",
|
||||
items: [
|
||||
title: "Сервіси", items: [
|
||||
{
|
||||
label: "Профіль",
|
||||
href: "#",
|
||||
},
|
||||
label: "Профіль", href: "#"},
|
||||
{
|
||||
label: "Розклад",
|
||||
href: "#",
|
||||
},
|
||||
label: "Розклад", href: "#"},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Про нас",
|
||||
items: [
|
||||
title: "SoccerAI", items: [
|
||||
{
|
||||
label: "Місія",
|
||||
href: "#",
|
||||
},
|
||||
label: "Про ШІ", href: "#"},
|
||||
{
|
||||
label: "Контакти",
|
||||
href: "#",
|
||||
},
|
||||
label: "Контакти", href: "#"},
|
||||
],
|
||||
},
|
||||
]}
|
||||
copyrightText="© 2026 ВЕРТИКАЛЬ · СТВОРЕНО В УКРАЇНІ"
|
||||
copyrightText="© 2026 SOCCERAI.UA · ШТУЧНИЙ ІНТЕЛЕКТ У ФУТБОЛІ"
|
||||
/>
|
||||
</div>
|
||||
</ReactLenis>
|
||||
|
||||
Reference in New Issue
Block a user