7 Commits

Author SHA1 Message Date
9fb763c9ef Update src/app/page.tsx 2025-12-25 11:07:19 +00:00
b651eb3f64 Update src/app/page.tsx 2025-12-25 11:04:30 +00:00
a8de81609c Update src/app/layout.tsx 2025-12-25 11:04:30 +00:00
3cb3c6d307 Update src/app/page.tsx 2025-12-25 11:03:00 +00:00
217d450e59 Update src/app/page.tsx 2025-12-25 10:55:39 +00:00
18db534079 Update src/app/layout.tsx 2025-12-25 10:55:38 +00:00
cc1045064d Update src/app/globals.css 2025-12-25 10:55:37 +00:00
3 changed files with 120 additions and 73 deletions

View File

@@ -4,13 +4,13 @@
/* Base units */ /* Base units */
/* --vw is set by ThemeProvider */ /* --vw is set by ThemeProvider */
--background: #ffffff; --background: #000000;
--card: #fafafa; --card: #1b1b1b;
--foreground: #000000; --foreground: #ffffff;
--primary-cta: #ff0000; --primary-cta: #ffcc00;
--secondary-cta: #ffffff; --secondary-cta: #151515;
--accent: #e5e5e5; --accent: #303030;
--background-accent: #f5f5f5; --background-accent: #303030;
/* text sizing - set by ThemeProvider */ /* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem); /* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);

View File

@@ -1,59 +1,35 @@
import type { Metadata } from "next"; import type { Metadata } from "next";
import { Inter } from "next/font/google"; import localFont from "next/font/local";
import "./globals.css"; import "./globals.css";
import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
const inter = Inter({ const geistSans = localFont({
variable: "--font-inter", src: "./fonts/GeistVF.woff2",
subsets: ["latin"], variable: "--font-geist-sans",
weight: "100 900",
});
const geistMono = localFont({
src: "./fonts/GeistMonoVF.woff2",
variable: "--font-geist-mono",
weight: "100 900",
}); });
export const metadata: Metadata = { export const metadata: Metadata = {
title: "Star Wars Fans Community - Explore the Galaxy", title: "Star Wars - Join the Galactic Saga",
description: "Join millions of Star Wars fans worldwide. Discover exclusive content, connect with the community, and celebrate the epic saga.", description: "Explore the galaxy far, far away with millions of fans. Discover movies, characters, collectibles and more from the Star Wars universe.",
keywords: "Star Wars, fans, community, movies, series, Jedi, galaxy", keywords: ["star wars", "movies", "collectibles", "lightsaber", "millennium falcon", "yoda", "force"]
metadataBase: new URL("https://starwarsfans.com"),
alternates: {
canonical: "https://starwarsfans.com"
},
openGraph: {
title: "Star Wars Fans Community",
description: "Join the Force. Connect with Star Wars fans, explore content, and celebrate the greatest saga.",
siteName: "STAR WARS",
type: "website",
images: [
{
url: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766502905270-5whkj6nu.jpg",
alt: "Star Wars galaxy"
}
]
},
twitter: {
card: "summary_large_image",
title: "Star Wars Fans Community",
description: "Join millions of fans exploring the galaxy's greatest saga",
images: ["https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766502905270-5whkj6nu.jpg"]
},
robots: {
index: true,
follow: true
}
}; };
export default function RootLayout({ export default function RootLayout({
children, children,
}: Readonly<{ }: {
children: React.ReactNode; children: React.ReactNode;
}>) { }) {
return ( return (
<html lang="en" suppressHydrationWarning> <html lang="en">
<ServiceWrapper> <body
<body className={`${geistSans.variable} ${geistMono.variable} antialiased`}
className={inter.variable} >
> {children}
<Tag />
{children}
<script <script
dangerouslySetInnerHTML={{ dangerouslySetInnerHTML={{
@@ -1273,7 +1249,6 @@ export default function RootLayout({
}} }}
/> />
</body> </body>
</ServiceWrapper>
</html> </html>
); );
} }

View File

@@ -4,9 +4,10 @@ import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import HeroBillboardCarouselSplit from "@/components/sections/hero/HeroBillboardCarouselSplit"; import HeroBillboardCarouselSplit from "@/components/sections/hero/HeroBillboardCarouselSplit";
import MetricCardThree from "@/components/sections/metrics/MetricCardThree"; import MetricCardThree from "@/components/sections/metrics/MetricCardThree";
import ParallaxAbout from "@/components/sections/about/ParallaxAbout"; import ParallaxAbout from "@/components/sections/about/ParallaxAbout";
import ContactInline from "@/components/sections/contact/ContactInline"; import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
import ProductCardTwo from "@/components/sections/product/ProductCardTwo";
import FooterSocial from "@/components/sections/footer/FooterSocial"; import FooterSocial from "@/components/sections/footer/FooterSocial";
import { Youtube, Twitter, Linkedin } from "lucide-react"; import { Youtube, Twitter, Linkedin, Film, Users, Calendar } from "lucide-react";
export default function StarWarsPage() { export default function StarWarsPage() {
return ( return (
@@ -26,14 +27,14 @@ export default function StarWarsPage() {
<HeroBillboardCarouselSplit <HeroBillboardCarouselSplit
title="STAR WARS: Join millions of fans exploring the galaxy's greatest saga" title="STAR WARS: Join millions of fans exploring the galaxy's greatest saga"
mediaItems={[ mediaItems={[
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766502905270-5whkj6nu.jpg", imageAlt: "Star Wars galaxy 1" }, { imageSrc: "/placeholders/placeholder1.webp", imageAlt: "Star Wars galaxy 1" },
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766502905270-5whkj6nu.jpg", imageAlt: "Star Wars galaxy 2" }, { imageSrc: "/placeholders/placeholder1.webp", imageAlt: "Star Wars galaxy 2" },
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766502905270-5whkj6nu.jpg", imageAlt: "Star Wars galaxy 3" }, { imageSrc: "/placeholders/placeholder1.webp", imageAlt: "Star Wars galaxy 3" },
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766502905270-5whkj6nu.jpg", imageAlt: "Star Wars galaxy 4" }, { imageSrc: "/placeholders/placeholder1.webp", imageAlt: "Star Wars galaxy 4" },
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766502905270-5whkj6nu.jpg", imageAlt: "Star Wars galaxy 5" }, { imageSrc: "/placeholders/placeholder1.webp", imageAlt: "Star Wars galaxy 5" },
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766502905270-5whkj6nu.jpg", imageAlt: "Star Wars galaxy 6" } { imageSrc: "/placeholders/placeholder1.webp", imageAlt: "Star Wars galaxy 6" }
]} ]}
buttons={[{ text: "Join the Force", href: "contact" }]} buttons={[{ text: "Join the Force", href: "#contact" }]}
/> />
</div> </div>
@@ -42,9 +43,67 @@ export default function StarWarsPage() {
title="Our Galactic Impact" title="Our Galactic Impact"
description="Experience the epic saga spanning decades of storytelling" description="Experience the epic saga spanning decades of storytelling"
metrics={[ metrics={[
{ id: "1", icon: Youtube, title: "Years", value: "40+" }, { id: "1", icon: Calendar, title: "Years", value: "40+" },
{ id: "2", icon: Twitter, title: "Films", value: "11" }, { id: "2", icon: Film, title: "Films", value: "11" },
{ id: "3", icon: Linkedin, title: "Fans", value: "100M+" } { id: "3", icon: Users, title: "Fans", value: "100M+" }
]}
gridVariant="uniform-all-items-equal"
textboxLayout="default"
animationType="slide-up"
useInvertedBackground="noInvert"
/>
</div>
<div id="products" data-section="products">
<ProductCardTwo
title="Featured Products"
description="Explore our premium Star Wars collection with top-rated items"
tag="Best Sellers"
products={[
{
id: "1",
brand: "Lucasfilm Collectibles",
name: "Premium Lightsaber Replica",
price: "$199.99",
rating: 5,
reviewCount: "2.3k",
imageSrc: "/placeholders/placeholder1.webp",
imageAlt: "Premium Lightsaber Replica",
starColor: "#ff0000"
},
{
id: "2",
brand: "Star Wars Universe",
name: "Millennium Falcon Model Kit",
price: "$149.99",
rating: 4,
reviewCount: "1.8k",
imageSrc: "/placeholders/placeholder1.webp",
imageAlt: "Millennium Falcon Model Kit",
starColor: "#ff0000"
},
{
id: "3",
brand: "Force Masters",
name: "Yoda Statue Figurine",
price: "$89.99",
rating: 5,
reviewCount: "3.1k",
imageSrc: "/placeholders/placeholder1.webp",
imageAlt: "Yoda Statue Figurine",
starColor: "#ff0000"
},
{
id: "4",
brand: "Imperial Design",
name: "Death Star Lamp",
price: "$129.99",
rating: 4,
reviewCount: "956",
imageSrc: "/placeholders/placeholder1.webp",
imageAlt: "Death Star Lamp",
starColor: "#ff0000"
}
]} ]}
gridVariant="uniform-all-items-equal" gridVariant="uniform-all-items-equal"
textboxLayout="default" textboxLayout="default"
@@ -57,17 +116,30 @@ export default function StarWarsPage() {
<ParallaxAbout <ParallaxAbout
title="Elevate Your Experience" title="Elevate Your Experience"
description="From Episode I through IX, experience the story of the Skywalker family and the eternal battle between light and dark sides of the Force." description="From Episode I through IX, experience the story of the Skywalker family and the eternal battle between light and dark sides of the Force."
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766502905270-5whkj6nu.jpg" imageSrc="/placeholders/placeholder1.webp"
imageAlt="Star Wars background" imageAlt="Star Wars background"
buttons={[{ text: "Discover More", href: "#" }]} buttons={[{ text: "Discover More", href: "#contact" }]}
/> />
</div> </div>
<div id="contact" data-section="contact"> <div id="contact" data-section="contact">
<ContactInline <ContactSplitForm
text="Join the Force" title="Get in Touch with the Force"
inputPlaceholder="Enter your email address" description="Subscribe to our newsletter for exclusive Star Wars content, updates, and announcements from the galaxy far, far away."
buttonText="Subscribe" inputs={[
{ name: "name", type: "text", placeholder: "Your Name", required: true },
{ name: "email", type: "email", placeholder: "Your Email", required: true }
]}
textarea={{
name: "message",
placeholder: "Tell us about your favorite Star Wars moment...",
rows: 4,
required: true
}}
imageSrc="/placeholders/placeholder1.webp"
imageAlt="Star Wars Contact"
mediaPosition="right"
buttonText="Send Message"
useInvertedBackground="noInvert" useInvertedBackground="noInvert"
/> />
</div> </div>