7 Commits

Author SHA1 Message Date
87ebab51dd Update src/app/results/page.tsx 2026-04-07 17:29:57 +00:00
8d537357fc Add src/app/search/page.tsx 2026-04-07 17:29:32 +00:00
aaba47b853 Add src/app/results/page.tsx 2026-04-07 17:29:32 +00:00
de9af24bae Update src/app/page.tsx 2026-04-07 17:29:31 +00:00
26756988da Merge version_1 into main
Merge version_1 into main
2026-04-07 17:26:39 +00:00
60d72288e0 Merge version_1 into main
Merge version_1 into main
2026-04-07 17:26:12 +00:00
94a71840ec Merge version_1 into main
Merge version_1 into main
2026-04-07 17:25:43 +00:00
3 changed files with 122 additions and 97 deletions

View File

@@ -29,14 +29,11 @@ export default function LandingPage() {
<div id="nav" data-section="nav"> <div id="nav" data-section="nav">
<NavbarStyleApple <NavbarStyleApple
navItems={[ navItems={[
{ { name: "Play", id: "hero" },
name: "Play", id: "hero"}, { name: "Features", id: "features" },
{ { name: "Reviews", id: "testimonials" },
name: "Features", id: "features"}, { name: "Support", id: "contact" },
{ { name: "Search", id: "/search" }
name: "Reviews", id: "testimonials"},
{
name: "Support", id: "contact"},
]} ]}
brandName="Penalty King" brandName="Penalty King"
/> />
@@ -44,57 +41,16 @@ export default function LandingPage() {
<div id="hero" data-section="hero"> <div id="hero" data-section="hero">
<HeroBillboardTestimonial <HeroBillboardTestimonial
background={{ background={{ variant: "gradient-bars" }}
variant: "gradient-bars"}}
title="Score Your Glory in Penalty King" title="Score Your Glory in Penalty King"
description="Experience the thrill of the ultimate penalty shootout. Master your aim, beat the keeper, and climb the global leaderboards today." description="Experience the thrill of the ultimate penalty shootout. Master your aim, beat the keeper, and climb the global leaderboards today."
testimonials={[ testimonials={[
{ { name: "Alex Riv", handle: "@alexriv", testimonial: "The best physics I've seen in a mobile penalty game. Absolutely addictive!", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/soccer-players-action-professional-stadium_654080-1752.jpg?_wi=1", imageAlt: "football penalty kick stadium goal" },
name: "Alex Riv", handle: "@alexriv", testimonial: "The best physics I've seen in a mobile penalty game. Absolutely addictive!", rating: 5, { name: "Sarah Lee", handle: "@slee", testimonial: "I love the tournament mode. It feels like a real high-stakes match.", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/american-football-player-neon-style_23-2151827436.jpg?_wi=1", imageAlt: "football physics engine icon" }
imageSrc: "http://img.b2bpic.net/free-photo/soccer-players-action-professional-stadium_654080-1752.jpg?_wi=1", imageAlt: "football penalty kick stadium goal"},
{
name: "Sarah Lee", handle: "@slee", testimonial: "I love the tournament mode. It feels like a real high-stakes match.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/american-football-player-neon-style_23-2151827436.jpg?_wi=1", imageAlt: "football physics engine icon"},
{
name: "Mark P.", handle: "@markp", testimonial: "Simple controls but really hard to master. Perfect for short breaks.", rating: 4,
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=9hnh2y&_wi=1", imageAlt: "global leaderboard gaming icon"},
{
name: "Jamie T.", handle: "@jamiet", testimonial: "Graphics are stunning and the gameplay is super smooth.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/football-composition-with-tablet_23-2147827733.jpg?_wi=1", imageAlt: "customizable sports kit UI"},
{
name: "Jordan S.", handle: "@jordans", testimonial: "Finally, a football game that actually feels competitive.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/south-korea-vs-netherlands_187299-32295.jpg?_wi=1", imageAlt: "soccer tournament bracket ui"},
]}
buttons={[
{
text: "Start Shooting", href: "#"},
]} ]}
buttons={[{ text: "Start Shooting", href: "#" }]}
imageSrc="http://img.b2bpic.net/free-photo/soccer-players-action-professional-stadium_654080-1752.jpg?_wi=2" imageSrc="http://img.b2bpic.net/free-photo/soccer-players-action-professional-stadium_654080-1752.jpg?_wi=2"
imageAlt="Penalty kick action" imageAlt="Penalty kick action"
avatars={[
{
src: "http://img.b2bpic.net/free-photo/young-girl-with-pink-hairs-looks-positive-wearing-headphones_114579-14803.jpg", alt: "User 1"},
{
src: "http://img.b2bpic.net/free-photo/looking-side-concerned-young-sporty-man-holding-ball-showing-silence-gesture_141793-81585.jpg", alt: "User 2"},
{
src: "http://img.b2bpic.net/free-photo/portrait-young-handsome-man-earphones-dark-haired-man-casual-clothes-looking-camera-portrait-concept_74855-24635.jpg", alt: "User 3"},
{
src: "http://img.b2bpic.net/free-photo/smiling-young-handsome-guy-wearing-black-t-shirt-with-headphones-playing-phone-isolated-blue-background_141793-105160.jpg", alt: "User 4"},
{
src: "http://img.b2bpic.net/free-photo/cute-girl-neon-lit-apartment-filming-dance-tutorial-other-children-watching-her_482257-76855.jpg", alt: "User 5"},
]}
marqueeItems={[
{
type: "text", text: "10M+ Downloads"},
{
type: "text", text: "Top Rated Sports"},
{
type: "text", text: "Global Tournaments"},
{
type: "text", text: "Hyper-Realistic Physics"},
{
type: "text", text: "Daily Challenges"},
]}
/> />
</div> </div>
@@ -103,18 +59,10 @@ export default function LandingPage() {
textboxLayout="default" textboxLayout="default"
useInvertedBackground={true} useInvertedBackground={true}
features={[ features={[
{ { title: "Realistic Physics", description: "Ball trajectory that mimics real-life aerodynamics and spin.", buttonIcon: Zap },
title: "Realistic Physics", description: "Ball trajectory that mimics real-life aerodynamics and spin.", buttonIcon: Zap, { title: "Global Competition", description: "Climb through divisions and compete against players worldwide.", buttonIcon: Trophy },
imageSrc: "http://img.b2bpic.net/free-photo/american-football-player-neon-style_23-2151827436.jpg?_wi=2"}, { title: "Custom Kits", description: "Unlock hundreds of unique jerseys and stadium accessories.", buttonIcon: Shirt },
{ { title: "Weekly Tournaments", description: "Join special seasonal events for massive rewards.", buttonIcon: Calendar }
title: "Global Competition", description: "Climb through divisions and compete against players worldwide.", buttonIcon: Trophy,
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=9hnh2y&_wi=2"},
{
title: "Custom Kits", description: "Unlock hundreds of unique jerseys and stadium accessories.", buttonIcon: Shirt,
imageSrc: "http://img.b2bpic.net/free-photo/football-composition-with-tablet_23-2147827733.jpg?_wi=2"},
{
title: "Weekly Tournaments", description: "Join special seasonal events for massive rewards.", buttonIcon: Calendar,
imageSrc: "http://img.b2bpic.net/free-photo/south-korea-vs-netherlands_187299-32295.jpg?_wi=2"},
]} ]}
title="Why You'll Love Penalty King" title="Why You'll Love Penalty King"
description="Engineered for speed, precision, and pure football enjoyment." description="Engineered for speed, precision, and pure football enjoyment."
@@ -127,23 +75,7 @@ export default function LandingPage() {
textboxLayout="split" textboxLayout="split"
gridVariant="bento-grid" gridVariant="bento-grid"
useInvertedBackground={false} useInvertedBackground={false}
testimonials={[ testimonials={[]}
{
id: "1", name: "Alex Riv", role: "Fan", company: "Global Player", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/young-girl-with-pink-hairs-looks-positive-wearing-headphones_114579-14803.jpg"},
{
id: "2", name: "Sarah Lee", role: "Fan", company: "Global Player", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/looking-side-concerned-young-sporty-man-holding-ball-showing-silence-gesture_141793-81585.jpg"},
{
id: "3", name: "Mark P.", role: "Fan", company: "Global Player", rating: 4,
imageSrc: "http://img.b2bpic.net/free-photo/portrait-young-handsome-man-earphones-dark-haired-man-casual-clothes-looking-camera-portrait-concept_74855-24635.jpg"},
{
id: "4", name: "Jamie T.", role: "Fan", company: "Global Player", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/smiling-young-handsome-guy-wearing-black-t-shirt-with-headphones-playing-phone-isolated-blue-background_141793-105160.jpg"},
{
id: "5", name: "Jordan S.", role: "Fan", company: "Global Player", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/cute-girl-neon-lit-apartment-filming-dance-tutorial-other-children-watching-her_482257-76855.jpg"},
]}
title="What Players Say" title="What Players Say"
description="Join thousands of soccer fans perfecting their kick." description="Join thousands of soccer fans perfecting their kick."
/> />
@@ -157,22 +89,14 @@ export default function LandingPage() {
useInvertedBackground={false} useInvertedBackground={false}
title="Exclusive In-Game Gear" title="Exclusive In-Game Gear"
description="Upgrade your player's look and performance with these essential packs." description="Upgrade your player's look and performance with these essential packs."
products={[ products={[]}
{
id: "1", brand: "Penalty King", name: "Golden Boots Pack", price: "$4.99", rating: 5,
reviewCount: "1.2k", imageSrc: "http://img.b2bpic.net/free-photo/football-composition-with-tablet_23-2147827733.jpg?_wi=3"},
{
id: "2", brand: "Penalty King", name: "Pro Stadium Kit", price: "$9.99", rating: 5,
reviewCount: "850", imageSrc: "http://img.b2bpic.net/free-photo/south-korea-vs-netherlands_187299-32295.jpg?_wi=3"},
]}
/> />
</div> </div>
<div id="contact" data-section="contact"> <div id="contact" data-section="contact">
<ContactCenter <ContactCenter
useInvertedBackground={true} useInvertedBackground={true}
background={{ background={{ variant: "gradient-bars" }}
variant: "gradient-bars"}}
title="Join the Champions" title="Join the Champions"
description="Sign up for game updates, special tournaments, and free in-game kits." description="Sign up for game updates, special tournaments, and free in-game kits."
tag="Stay Updated" tag="Stay Updated"
@@ -182,13 +106,11 @@ export default function LandingPage() {
<div id="footer" data-section="footer"> <div id="footer" data-section="footer">
<FooterLogoReveal <FooterLogoReveal
logoText="Penalty King" logoText="Penalty King"
leftLink={{ leftLink={{ text: "Privacy Policy", href: "#" }}
text: "Privacy Policy", href: "#"}} rightLink={{ text: "Terms of Use", href: "#" }}
rightLink={{
text: "Terms of Use", href: "#"}}
/> />
</div> </div>
</ReactLenis> </ReactLenis>
</ThemeProvider> </ThemeProvider>
); );
} }

51
src/app/results/page.tsx Normal file
View File

@@ -0,0 +1,51 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
import ProductCardTwo from '@/components/sections/product/ProductCardTwo';
export default function ResultsPage() {
return (
<ThemeProvider
defaultButtonVariant="hover-magnetic"
defaultTextAnimation="reveal-blur"
borderRadius="pill"
contentWidth="medium"
sizing="mediumLarge"
background="noise"
cardStyle="subtle-shadow"
primaryButtonStyle="radial-glow"
secondaryButtonStyle="radial-glow"
headingFontWeight="semibold"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarStyleApple
navItems={[{ name: "Play", id: "hero" }, { name: "Search", id: "/search" }]}
brandName="Penalty King"
/>
</div>
<div className="py-20">
<ProductCardTwo
title="Search Results"
description="Showing matches for your search"
gridVariant="uniform-all-items-equal"
animationType="slide-up"
useInvertedBackground={false}
textboxLayout="default"
products={[]}
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoReveal
logoText="Penalty King"
leftLink={{ text: "Privacy Policy", href: "#" }}
rightLink={{ text: "Terms of Use", href: "#" }}
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}

52
src/app/search/page.tsx Normal file
View File

@@ -0,0 +1,52 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import { useState } from 'react';
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
export default function SearchPage() {
const [query, setQuery] = useState("");
return (
<ThemeProvider
defaultButtonVariant="hover-magnetic"
defaultTextAnimation="reveal-blur"
borderRadius="pill"
contentWidth="medium"
sizing="mediumLarge"
background="noise"
cardStyle="subtle-shadow"
primaryButtonStyle="radial-glow"
secondaryButtonStyle="radial-glow"
headingFontWeight="semibold"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarStyleApple
navItems={[{ name: "Play", id: "hero" }, { name: "Search", id: "/search" }]}
brandName="Penalty King"
/>
</div>
<div className="min-h-screen flex flex-col items-center justify-center p-12">
<h1 className="text-4xl font-bold mb-8">Search for Items</h1>
<input
type="text"
className="w-full max-w-lg p-4 rounded-full border border-gray-300 focus:outline-none focus:ring-2 focus:ring-blue-500"
placeholder="Enter keywords..."
value={query}
onChange={(e) => setQuery(e.target.value)}
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoReveal
logoText="Penalty King"
leftLink={{ text: "Privacy Policy", href: "#" }}
rightLink={{ text: "Terms of Use", href: "#" }}
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}