Merge version_2 into main #4

Merged
bender merged 5 commits from version_2 into main 2026-04-08 06:06:16 +00:00
5 changed files with 109 additions and 67 deletions

18
src/app/drivers/page.tsx Normal file
View File

@@ -0,0 +1,18 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import FooterBase from '@/components/sections/footer/FooterBase';
export default function DriversPage() {
return (
<ThemeProvider>
<NavbarStyleCentered navItems={[{ name: "Home", id: "/" }, { name: "Races", id: "/races" }, { name: "Drivers", id: "/drivers" }, { name: "Standings", id: "/standings" }, { name: "News", id: "/news" }]} brandName="F1 Universe" />
<main className="pt-32 pb-20 px-6 max-w-7xl mx-auto min-h-screen">
<h1 className="text-4xl font-bold mb-8">Driver Profiles</h1>
<p>Detailed driver statistics and profiles grid content goes here.</p>
</main>
<FooterBase logoText="F1 Universe" columns={[]} />
</ThemeProvider>
);
}

18
src/app/news/page.tsx Normal file
View File

@@ -0,0 +1,18 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import FooterBase from '@/components/sections/footer/FooterBase';
export default function NewsPage() {
return (
<ThemeProvider>
<NavbarStyleCentered navItems={[{ name: "Home", id: "/" }, { name: "Races", id: "/races" }, { name: "Drivers", id: "/drivers" }, { name: "Standings", id: "/standings" }, { name: "News", id: "/news" }]} brandName="F1 Universe" />
<main className="pt-32 pb-20 px-6 max-w-7xl mx-auto min-h-screen">
<h1 className="text-4xl font-bold mb-8">Latest F1 News</h1>
<p>Dynamic blog feed content goes here.</p>
</main>
<FooterBase logoText="F1 Universe" columns={[]} />
</ThemeProvider>
);
}

View File

@@ -12,6 +12,10 @@ import TeamCardFive from '@/components/sections/team/TeamCardFive';
import { Activity, Gauge, Shield, Target, Zap } from "lucide-react";
export default function LandingPage() {
const handleAction = () => {
console.log("Button clicked");
};
return (
<ThemeProvider
defaultButtonVariant="hover-magnetic"
@@ -29,14 +33,10 @@ export default function LandingPage() {
<div id="nav" data-section="nav">
<NavbarStyleCentered
navItems={[
{
name: "Home", id: "hero"},
{
name: "Telemetry", id: "features"},
{
name: "Calendar", id: "faq"},
{
name: "Contact", id: "contact"},
{ name: "Home", id: "hero" },
{ name: "Telemetry", id: "features" },
{ name: "Calendar", id: "faq" },
{ name: "Contact", id: "contact" },
]}
brandName="F1 Universe"
/>
@@ -50,17 +50,13 @@ export default function LandingPage() {
imageAlt="F1 car in cinematic lighting"
showDimOverlay={true}
showBlur={true}
buttons={[{ text: "Explore Now", onClick: handleAction }]}
avatars={[
{
src: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg", alt: "Driver 1"},
{
src: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg", alt: "Driver 2"},
{
src: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg", alt: "Driver 3"},
{
src: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg", alt: "Driver 4"},
{
src: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg", alt: "Driver 5"},
{ src: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg", alt: "Driver 1" },
{ src: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg", alt: "Driver 2" },
{ src: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg", alt: "Driver 3" },
{ src: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg", alt: "Driver 4" },
{ src: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg", alt: "Driver 5" },
]}
avatarText="Join 50,000+ elite fans"
/>
@@ -72,21 +68,11 @@ export default function LandingPage() {
textboxLayout="split"
useInvertedBackground={true}
features={[
{
icon: Zap,
title: "Live Lap Times", description: "Precision timing for every driver on the grid."},
{
icon: Shield,
title: "Tire Telemetry", description: "Track compound wear and grip status in real-time."},
{
icon: Target,
title: "DRS Zones", description: "Monitor overtaking opportunities across the circuit."},
{
icon: Gauge,
title: "Engine Mapping", description: "Advanced power unit analytics for every lap."},
{
icon: Activity,
title: "Downforce Metrics", description: "Aerodynamic efficiency tracking for high-speed corners."},
{ icon: Zap, title: "Live Lap Times", description: "Precision timing for every driver on the grid." },
{ icon: Shield, title: "Tire Telemetry", description: "Track compound wear and grip status in real-time." },
{ icon: Target, title: "DRS Zones", description: "Monitor overtaking opportunities across the circuit." },
{ icon: Gauge, title: "Engine Mapping", description: "Advanced power unit analytics for every lap." },
{ icon: Activity, title: "Downforce Metrics", description: "Aerodynamic efficiency tracking for high-speed corners." },
]}
title="Real-Time Telemetry"
description="Access live race data, driver performance tracking, and mechanical insights powered by high-speed APIs."
@@ -99,16 +85,11 @@ export default function LandingPage() {
textboxLayout="default"
useInvertedBackground={false}
team={[
{
id: "d1", name: "Lewis Hamilton", role: "7x World Champion", imageSrc: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg?_wi=1"},
{
id: "d2", name: "Max Verstappen", role: "Defending Champion", imageSrc: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg?_wi=2"},
{
id: "d3", name: "Charles Leclerc", role: "Ferrari Specialist", imageSrc: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg?_wi=3"},
{
id: "d4", name: "Lando Norris", role: "Rising Star", imageSrc: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg?_wi=4"},
{
id: "d5", name: "George Russell", role: "Technical Lead", imageSrc: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg?_wi=5"},
{ id: "d1", name: "Lewis Hamilton", role: "7x World Champion", imageSrc: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg?_wi=1" },
{ id: "d2", name: "Max Verstappen", role: "Defending Champion", imageSrc: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg?_wi=2" },
{ id: "d3", name: "Charles Leclerc", role: "Ferrari Specialist", imageSrc: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg?_wi=3" },
{ id: "d4", name: "Lando Norris", role: "Rising Star", imageSrc: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg?_wi=4" },
{ id: "d5", name: "George Russell", role: "Technical Lead", imageSrc: "http://img.b2bpic.net/free-photo/close-image-motorcyclist-studio-shot_613910-10818.jpg?_wi=5" },
]}
title="Grid Leaders"
description="Profiles of the world's fastest drivers and their championship trajectory."
@@ -120,32 +101,26 @@ export default function LandingPage() {
textboxLayout="split"
useInvertedBackground={true}
faqs={[
{
id: "r1", title: "Next Race: Bahrain", content: "The season opener begins in 3 days."},
{
id: "r2", title: "Upcoming: Jeddah", content: "Follow the street circuit challenge next week."},
{
id: "r3", title: "Australia Grand Prix", content: "Mark your calendars for the iconic Albert Park."},
{
id: "r4", title: "Suzuka Circuit", content: "The legendary Japanese GP awaits in April."},
{
id: "r5", title: "Monaco Grand Prix", content: "The crown jewel of Formula 1 racing happens in May."},
{ id: "r1", title: "Next Race: Bahrain", content: "The season opener begins in 3 days." },
{ id: "r2", title: "Upcoming: Jeddah", content: "Follow the street circuit challenge next week." },
{ id: "r3", title: "Australia Grand Prix", content: "Mark your calendars for the iconic Albert Park." },
{ id: "r4", title: "Suzuka Circuit", content: "The legendary Japanese GP awaits in April." },
{ id: "r5", title: "Monaco Grand Prix", content: "The crown jewel of Formula 1 racing happens in May." },
]}
title="Race Calendar"
description="Stay ahead of every Grand Prix with our live-updating race schedule."
faqsAnimation="slide-up"
buttons={[{ text: "View Full Calendar", onClick: handleAction }]}
/>
</div>
<div id="contact" data-section="contact">
<ContactText
useInvertedBackground={false}
background={{
variant: "gradient-bars"}}
background={{ variant: "gradient-bars" }}
text="Join the community. Subscribe for real-time race alerts."
buttons={[
{
text: "Subscribe Now", href: "#"},
{ text: "Subscribe Now", onClick: handleAction },
]}
/>
</div>
@@ -155,20 +130,15 @@ export default function LandingPage() {
columns={[
{
title: "Resources", items: [
{
label: "Telemetry", href: "#features"},
{
label: "Calendar", href: "#faq"},
{
label: "Drivers", href: "#team"},
{ label: "Telemetry", href: "#features" },
{ label: "Calendar", href: "#faq" },
{ label: "Drivers", href: "#team" },
],
},
{
title: "Legal", items: [
{
label: "Terms of Service", href: "#"},
{
label: "Privacy Policy", href: "#"},
{ label: "Terms of Service", href: "#", onClick: handleAction },
{ label: "Privacy Policy", href: "#", onClick: handleAction },
],
},
]}

18
src/app/races/page.tsx Normal file
View File

@@ -0,0 +1,18 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import FooterBase from '@/components/sections/footer/FooterBase';
export default function RacesPage() {
return (
<ThemeProvider>
<NavbarStyleCentered navItems={[{ name: "Home", id: "/" }, { name: "Races", id: "/races" }, { name: "Drivers", id: "/drivers" }, { name: "Standings", id: "/standings" }, { name: "News", id: "/news" }]} brandName="F1 Universe" />
<main className="pt-32 pb-20 px-6 max-w-7xl mx-auto min-h-screen">
<h1 className="text-4xl font-bold mb-8">Race Schedule & Results</h1>
<p>Interactive calendar and race results grid content goes here.</p>
</main>
<FooterBase logoText="F1 Universe" columns={[]} />
</ThemeProvider>
);
}

View File

@@ -0,0 +1,18 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import FooterBase from '@/components/sections/footer/FooterBase';
export default function StandingsPage() {
return (
<ThemeProvider>
<NavbarStyleCentered navItems={[{ name: "Home", id: "/" }, { name: "Races", id: "/races" }, { name: "Drivers", id: "/drivers" }, { name: "Standings", id: "/standings" }, { name: "News", id: "/news" }]} brandName="F1 Universe" />
<main className="pt-32 pb-20 px-6 max-w-7xl mx-auto min-h-screen">
<h1 className="text-4xl font-bold mb-8">Championship Standings</h1>
<p>Live standings tables for constructors and drivers go here.</p>
</main>
<FooterBase logoText="F1 Universe" columns={[]} />
</ThemeProvider>
);
}