19 Commits

Author SHA1 Message Date
acede89ab0 Update src/app/shop/page.tsx 2026-02-20 13:15:19 +00:00
49e20aea67 Update src/app/shop/[id]/page.tsx 2026-02-20 13:15:18 +00:00
bf9f0e9e9a Update src/app/page.tsx 2026-02-20 13:15:18 +00:00
1eb805e7d8 Update src/app/layout.tsx 2026-02-20 13:15:17 +00:00
9533f2dd63 Update src/app/blog/page.tsx 2026-02-20 13:15:16 +00:00
37351594f2 Add src/app/about/page.tsx 2026-02-20 13:15:15 +00:00
bd1d195b16 Merge version_2 into main
Merge version_2 into main
2026-02-20 13:12:19 +00:00
154ae114ca Update src/app/shop/page.tsx 2026-02-20 13:12:15 +00:00
f8e57445e6 Update src/app/shop/[id]/page.tsx 2026-02-20 13:12:15 +00:00
0463c91378 Update src/app/page.tsx 2026-02-20 13:12:14 +00:00
5666da4a41 Update src/app/blog/page.tsx 2026-02-20 13:12:13 +00:00
f1c7620e31 Merge version_2 into main
Merge version_2 into main
2026-02-20 13:09:51 +00:00
d3bb2125a6 Update src/app/styles/variables.css 2026-02-20 13:09:47 +00:00
1bc55a6b9d Update src/app/shop/page.tsx 2026-02-20 13:09:46 +00:00
91287fe967 Update src/app/shop/[id]/page.tsx 2026-02-20 13:09:46 +00:00
26fc630dac Update src/app/page.tsx 2026-02-20 13:09:45 +00:00
2d750a5a78 Update src/app/layout.tsx 2026-02-20 13:09:44 +00:00
17e976e608 Update src/app/blog/page.tsx 2026-02-20 13:09:43 +00:00
c0d2ebfe4e Merge version_1 into main
Merge version_1 into main
2026-02-20 12:59:02 +00:00
7 changed files with 170 additions and 62 deletions

72
src/app/about/page.tsx Normal file
View File

@@ -0,0 +1,72 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
export default function AboutPage() {
const navItems = [
{ name: 'Home', id: '/' },
{ name: 'About', id: '/about' },
{ name: 'Features', id: '/#features' },
{ name: 'Showcase', id: '/#product' },
{ name: 'News', id: '/blog' },
{ name: 'Shop', id: '/shop' },
{ name: 'Team', id: '/#team' },
{ name: 'Contact', id: '/#contact' }
];
const footerColumns = [
{ items: [{ label: 'About Us', href: '/about' }, { label: 'Features', href: '#features' }, { label: 'News', href: '/blog' }] },
{ items: [{ label: 'Community', href: '#product' }, { label: 'Team', href: '#team' }, { label: 'FAQ', href: '#faq' }] },
{ items: [{ label: 'Contact', href: '#contact' }, { label: 'Privacy Policy', href: '#' }, { label: 'Terms of Service', href: '#' }] }
];
return (
<ThemeProvider
defaultButtonVariant="directional-hover"
defaultTextAnimation="background-highlight"
borderRadius="rounded"
contentWidth="mediumSmall"
sizing="medium"
background="noise"
cardStyle="subtle-shadow"
primaryButtonStyle="gradient"
secondaryButtonStyle="layered"
headingFontWeight="medium"
>
<div id="nav" data-section="nav">
<NavbarStyleApple
brandName="Star Wars Fan Club"
navItems={navItems}
/>
</div>
<main className="min-h-screen flex flex-col items-center justify-center py-20 px-4 sm:px-6 lg:px-8">
<div id="about-community" data-section="about-community" className="w-full max-w-content-width mx-auto text-center pt-20 pb-10">
<h1 className="text-4xl sm:text-5xl font-bold text-foreground mb-6">
Our Community: United by the Force
</h1>
<p className="text-lg text-foreground/80 leading-relaxed max-w-3xl mx-auto">
Welcome to the heart of the Star Wars Fan Club our vibrant and growing community!
We are a diverse group of enthusiasts from across the galaxy, united by a shared
passion for the epic sagas, compelling characters, and rich lore of Star Wars.
Here, you'll find fellow fans eager to discuss theories, share fan art, celebrate
milestones, and relive iconic moments. Whether you're a seasoned Jedi Master or
a curious Padawan, there's a place for you to connect, engage, and deepen your
love for a galaxy far, far away. Join us as we explore new horizons, debate the
mysteries of the Force, and keep the spirit of Star Wars alive!
</p>
</div>
</main>
<div id="footer" data-section="footer">
<FooterLogoEmphasis
columns={footerColumns}
logoText="Star Wars Fan Club"
containerClassName="bg-background-accent text-foreground"
/>
</div>
</ThemeProvider>
);
}

View File

@@ -4,12 +4,29 @@ import ReactLenis from "lenis/react";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import { useBlogPosts } from "@/hooks/useBlogPosts";
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
import BlogCardThree from '@/components/sections/blog/BlogCardThree';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
import BlogCardThree from "@/components/sections/blog/BlogCardThree";
export default function BlogPage() {
const { posts, isLoading } = useBlogPosts();
const navItems = [
{ name: 'Home', id: '/' },
{ name: 'About', id: '/about' },
{ name: 'Features', id: '/#features' },
{ name: 'Showcase', id: '/#product' },
{ name: 'News', id: '/blog' },
{ name: 'Shop', id: '/shop' },
{ name: 'Team', id: '/#team' },
{ name: 'Contact', id: '/#contact' }
];
const footerColumns = [
{ items: [{ label: 'About Us', href: '/about' }, { label: 'Features', href: '#features' }, { label: 'News', href: '/blog' }] },
{ items: [{ label: 'Community', href: '#product' }, { label: 'Team', href: '#team' }, { label: 'FAQ', href: '#faq' }] },
{ items: [{ label: 'Contact', href: '#contact' }, { label: 'Privacy Policy', href: '#' }, { label: 'Terms of Service', href: '#' }] }
];
return (
<ThemeProvider
defaultButtonVariant="directional-hover"
@@ -27,9 +44,7 @@ export default function BlogPage() {
<div id="nav" data-section="nav">
<NavbarStyleApple
brandName="Star Wars Fan Club"
navItems={[
{ name: "Home", id: "/" }
]}
navItems={navItems}
/>
</div>
@@ -50,10 +65,7 @@ export default function BlogPage() {
)}
<div id="footer" data-section="footer">
<FooterLogoEmphasis
columns={[
{ items: [{ label: "Home", href: "/" }, { label: "Shop", href: "/shop" }, { label: "Blog", href: "/blog" }] },
{ items: [{ label: "Privacy Policy", href: "#" }, { label: "Terms of Service", href: "#" }] }
]}
columns={footerColumns}
logoText="Star Wars Fan Club"
containerClassName="bg-background-accent text-foreground"
/>

View File

@@ -14,10 +14,10 @@ const sourceSans3 = Source_Sans_3({
});
export const metadata: Metadata = {
title: "Star Wars Fan Club - Join the Galaxy's Ultimate Fandom", description: "Join the Star Wars Fan Club! Explore lore, share theories, connect with fans, and stay updated on all things from a galaxy far, far away.", keywords: "Star Wars, fan club, fandom, lightsaber, galaxy, sci-fi, community, forum, news, lore, fan art, cosplay", openGraph: {
title: "Star Wars Fan Club - Join the Galaxy's Ultimate Fandom", description: "Join the Star Wars Fan Club! Explore lore, share theories, connect with fans, and stay updated on all things from a galaxy far, far away.", keywords: "Star Wars, fan club, fandom, lightsaber, galaxy, sci-fi, community, forum, news, lore, fan art, cosplay, about", openGraph: {
title: "Star Wars Fan Club - Join the Galaxy's Ultimate Fandom", description: "Join the Star Wars Fan Club! Explore lore, share theories, connect with fans, and stay updated on all things from a galaxy far, far away.", url: "https://starwarsfanclub.com", siteName: "Star Wars Fan Club", images: [
{
url: "https://img.b2bpic.net/free-vector/modern-composition-with-two-crossed-light-swords_23-2147926469.jpg", alt: "Lightsaber igniting in space"},
url: "https://img.b2bpic.net/free-vector/modern-composition-with-two-crossed-light-swords_23-2147926469.jpg", alt: "Lightsaber igniting in space"}
],
type: "website"},
twitter: {

View File

@@ -13,6 +13,23 @@ import ContactText from '@/components/sections/contact/ContactText';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
export default function LandingPage() {
const navItems = [
{ name: 'Home', id: '/' },
{ name: 'About', id: '/about' },
{ name: 'Features', id: '/#features' },
{ name: 'Showcase', id: '/#product' },
{ name: 'News', id: '/blog' },
{ name: 'Shop', id: '/shop' },
{ name: 'Team', id: '/#team' },
{ name: 'Contact', id: '/#contact' }
];
const footerColumns = [
{ items: [{ label: 'About Us', href: '/about' }, { label: 'Features', href: '#features' }, { label: 'News', href: '/blog' }] },
{ items: [{ label: 'Community', href: '#product' }, { label: 'Team', href: '#team' }, { label: 'FAQ', href: '#faq' }] },
{ items: [{ label: 'Contact', href: '#contact' }, { label: 'Privacy Policy', href: '#' }, { label: 'Terms of Service', href: '#' }] }
];
return (
<ThemeProvider
defaultButtonVariant="directional-hover"
@@ -29,14 +46,7 @@ export default function LandingPage() {
<div id="nav" data-section="nav">
<NavbarStyleApple
brandName="Star Wars Fan Club"
navItems={[
{ name: 'About', id: '#about' },
{ name: 'Features', id: '#features' },
{ name: 'Showcase', id: '#product' },
{ name: 'News', id: '#blog' },
{ name: 'Team', id: '#team' },
{ name: 'Contact', id: '#contact' }
]}
navItems={navItems}
/>
</div>
<div id="hero" data-section="hero">
@@ -60,7 +70,7 @@ export default function LandingPage() {
title="Unite the Fandom"
description="From the original trilogy to the latest series, our club is a gathering place for every Star Wars enthusiast. Share theories, debate iconic moments, and immerse yourself in a community that understands the Force."
tag="About Our Club"
buttons={[{ text: 'Our Mission', href: '#' }]}
buttons={[{ text: 'Our Mission', href: '/about' }]}
imageSrc="https://img.b2bpic.net/free-photo/fencing_654080-2262.jpg"
imageAlt="Group of Star Wars fans at a convention"
useInvertedBackground={false}
@@ -168,7 +178,7 @@ export default function LandingPage() {
<ContactText
text="Ready to embark on your Star Wars journey with us? Join the ranks of fellow fans and become part of our galactic community today!"
animationType="entrance-slide"
buttons={[{ text: 'Join the Rebellion', href: '#' }]}
buttons={[{ text: 'Join the Rebellion', href: '/#contact' }]}
background={{ variant: 'radial-gradient' }}
useInvertedBackground={false}
contentClassName="max-w-mediumSmall text-center"
@@ -176,11 +186,7 @@ export default function LandingPage() {
</div>
<div id="footer" data-section="footer">
<FooterLogoEmphasis
columns={[
{ items: [{ label: 'About Us', href: '#about' }, { label: 'Features', href: '#features' }, { label: 'News', href: '#blog' }] },
{ items: [{ label: 'Community', href: '#product' }, { label: 'Team', href: '#team' }, { label: 'FAQ', href: '#faq' }] },
{ items: [{ label: 'Contact', href: '#contact' }, { label: 'Privacy Policy', href: '#' }, { label: 'Terms of Service', href: '#' }] }
]}
columns={footerColumns}
logoText="Star Wars Fan Club"
containerClassName="bg-background-accent text-foreground"
/>

View File

@@ -66,6 +66,23 @@ export default function ProductPage({ params }: ProductPageProps) {
await checkout(getCheckoutItems(), { successUrl: currentUrl.toString() });
}, [cartItems, checkout, getCheckoutItems]);
const navItems = [
{ name: 'Home', id: '/' },
{ name: 'About', id: '/about' },
{ name: 'Features', id: '/#features' },
{ name: 'Showcase', id: '/#product' },
{ name: 'News', id: '/blog' },
{ name: 'Shop', id: '/shop' },
{ name: 'Team', id: '/#team' },
{ name: 'Contact', id: '/#contact' }
];
const footerColumns = [
{ items: [{ label: 'About Us', href: '/about' }, { label: 'Features', href: '#features' }, { label: 'News', href: '/blog' }] },
{ items: [{ label: 'Community', href: '#product' }, { label: 'Team', href: '#team' }, { label: 'FAQ', href: '#faq' }] },
{ items: [{ label: 'Contact', href: '#contact' }, { label: 'Privacy Policy', href: '#' }, { label: 'Terms of Service', href: '#' }] }
];
if (isLoading) {
return (
<ThemeProvider
@@ -84,9 +101,7 @@ export default function ProductPage({ params }: ProductPageProps) {
<div id="nav" data-section="nav">
<NavbarStyleApple
brandName="Star Wars Fan Club"
navItems={[
{ name: "Home", id: "/" }
]}
navItems={navItems}
button={{ text: "Cart", onClick: () => setCartOpen(true) }}
/>
</div>
@@ -116,9 +131,7 @@ export default function ProductPage({ params }: ProductPageProps) {
<div id="nav" data-section="nav">
<NavbarStyleApple
brandName="Star Wars Fan Club"
navItems={[
{ name: "Home", id: "/" }
]}
navItems={navItems}
button={{ text: "Cart", onClick: () => setCartOpen(true) }}
/>
</div>
@@ -155,9 +168,7 @@ export default function ProductPage({ params }: ProductPageProps) {
<div id="nav" data-section="nav">
<NavbarStyleApple
brandName="Star Wars Fan Club"
navItems={[
{ name: "Home", id: "/" }
]}
navItems={navItems}
button={{ text: "Cart", onClick: () => setCartOpen(true) }}
/>
</div>
@@ -199,10 +210,7 @@ export default function ProductPage({ params }: ProductPageProps) {
</div>
<div id="footer" data-section="footer">
<FooterLogoEmphasis
columns={[
{ items: [{ label: "Home", href: "/" }, { label: "Shop", href: "/shop" }, { label: "Blog", href: "/blog" }] },
{ items: [{ label: "Privacy Policy", href: "#" }, { label: "Terms of Service", href: "#" }] }
]}
columns={footerColumns}
logoText="Star Wars Fan Club"
containerClassName="bg-background-accent text-foreground"
/>

View File

@@ -41,6 +41,23 @@ export default function ShopPage() {
await checkout(getCheckoutItems(), { successUrl: currentUrl.toString() });
}, [cartItems, checkout, getCheckoutItems]);
const navItems = [
{ name: 'Home', id: '/' },
{ name: 'About', id: '/about' },
{ name: 'Features', id: '/#features' },
{ name: 'Showcase', id: '/#product' },
{ name: 'News', id: '/blog' },
{ name: 'Shop', id: '/shop' },
{ name: 'Team', id: '/#team' },
{ name: 'Contact', id: '/#contact' }
];
const footerColumns = [
{ items: [{ label: 'About Us', href: '/about' }, { label: 'Features', href: '#features' }, { label: 'News', href: '/blog' }] },
{ items: [{ label: 'Community', href: '#product' }, { label: 'Team', href: '#team' }, { label: 'FAQ', href: '#faq' }] },
{ items: [{ label: 'Contact', href: '#contact' }, { label: 'Privacy Policy', href: '#' }, { label: 'Terms of Service', href: '#' }] }
];
if (isLoading) {
return (
<ThemeProvider
@@ -59,9 +76,7 @@ export default function ShopPage() {
<div id="nav" data-section="nav">
<NavbarStyleApple
brandName="Star Wars Fan Club"
navItems={[
{ name: "Home", id: "/" }
]}
navItems={navItems}
button={{ text: "Cart", onClick: () => setCartOpen(true) }}
/>
</div>
@@ -90,9 +105,7 @@ export default function ShopPage() {
<div id="nav" data-section="nav">
<NavbarStyleApple
brandName="Star Wars Fan Club"
navItems={[
{ name: "Home", id: "/" }
]}
navItems={navItems}
button={{ text: "Cart", onClick: () => setCartOpen(true) }}
/>
</div>
@@ -124,10 +137,7 @@ export default function ShopPage() {
</div>
<div id="footer" data-section="footer">
<FooterLogoEmphasis
columns={[
{ items: [{ label: "Home", href: "/" }, { label: "Shop", href: "/shop" }, { label: "Blog", href: "/blog" }] },
{ items: [{ label: "Privacy Policy", href: "#" }, { label: "Terms of Service", href: "#" }] }
]}
columns={footerColumns}
logoText="Star Wars Fan Club"
containerClassName="bg-background-accent text-foreground"
/>

View File

@@ -2,21 +2,21 @@
/* Base units */
/* --vw is set by ThemeProvider */
/* --background: #020617;;
--card: #0f172a;;
--foreground: #e2e8f0;;
--primary-cta: #c4d8f9;;
--secondary-cta: #041633;;
--accent: #2d30f3;;
--background-accent: #1d4ed8;; */
/* --background: #fbfaff;;
--card: #f7f5ff;;
--foreground: #0f0022;;
--primary-cta: #8b5cf6;;
--secondary-cta: #ffffff;;
--accent: #d8cef5;;
--background-accent: #c4a8f9;; */
--background: #020617;;
--card: #0f172a;;
--foreground: #e2e8f0;;
--primary-cta: #c4d8f9;;
--secondary-cta: #041633;;
--accent: #2d30f3;;
--background-accent: #1d4ed8;;
--background: #fbfaff;;
--card: #f7f5ff;;
--foreground: #0f0022;;
--primary-cta: #8b5cf6;;
--secondary-cta: #ffffff;;
--accent: #d8cef5;;
--background-accent: #c4a8f9;;
/* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);