57 Commits

Author SHA1 Message Date
4c9904700d Merge version_24 into main
Merge version_24 into main
2026-04-18 16:56:32 +00:00
7a49784494 Update src/app/page.tsx 2026-04-18 16:56:29 +00:00
b7c1a36e28 Merge version_23 into main
Merge version_23 into main
2026-04-18 16:50:23 +00:00
3bffca8776 Update src/app/page.tsx 2026-04-18 16:50:17 +00:00
18d9a5e6c7 Merge version_22 into main
Merge version_22 into main
2026-04-16 18:42:36 +00:00
70abadd4ec Update src/app/contact/page.tsx 2026-04-16 18:42:33 +00:00
1e7e703bfb Merge version_22 into main
Merge version_22 into main
2026-04-16 18:42:11 +00:00
bcd85e4403 Update src/app/contact/page.tsx 2026-04-16 18:42:08 +00:00
e36d10ff12 Merge version_22 into main
Merge version_22 into main
2026-04-16 18:41:47 +00:00
350bbba88d Update src/app/contact/page.tsx 2026-04-16 18:41:43 +00:00
d7a8fe39c9 Merge version_21 into main
Merge version_21 into main
2026-04-16 18:36:47 +00:00
e5ee48cc07 Update src/app/contact/page.tsx 2026-04-16 18:36:44 +00:00
33e28812d7 Merge version_20 into main
Merge version_20 into main
2026-04-16 18:32:02 +00:00
d949ae7cb3 Update src/app/about/page.tsx 2026-04-16 18:31:59 +00:00
e51edb2ab9 Merge version_20 into main
Merge version_20 into main
2026-04-16 18:31:38 +00:00
58bba9e16c Update src/app/page.tsx 2026-04-16 18:31:35 +00:00
3cb217e9b3 Add src/app/contact/page.tsx 2026-04-16 18:31:35 +00:00
e815a263c7 Update src/app/about/page.tsx 2026-04-16 18:31:34 +00:00
8d03c5e113 Merge version_19 into main
Merge version_19 into main
2026-04-16 17:05:15 +00:00
0d5bd9a8e7 Update src/app/page.tsx 2026-04-16 17:05:12 +00:00
357b1e99f1 Merge version_19 into main
Merge version_19 into main
2026-04-16 17:04:46 +00:00
be3f300dd9 Update src/app/page.tsx 2026-04-16 17:04:43 +00:00
fe98a8d669 Merge version_18 into main
Merge version_18 into main
2026-04-16 17:01:16 +00:00
f3b3d1b041 Update src/app/page.tsx 2026-04-16 17:01:13 +00:00
2b5743a2fd Update src/app/about/page.tsx 2026-04-16 17:01:12 +00:00
5669f9543a Merge version_18 into main
Merge version_18 into main
2026-04-16 17:00:52 +00:00
0b2b51c4a5 Update src/app/page.tsx 2026-04-16 17:00:49 +00:00
2e7dfb439b Add src/app/about/page.tsx 2026-04-16 17:00:48 +00:00
567a9a641f Merge version_17 into main
Merge version_17 into main
2026-04-16 16:59:15 +00:00
1c468fe31c Update src/app/page.tsx 2026-04-16 16:59:11 +00:00
71935b7066 Merge version_16 into main
Merge version_16 into main
2026-04-16 16:55:32 +00:00
bceadae530 Update src/app/page.tsx 2026-04-16 16:55:29 +00:00
cb5af2ec7a Merge version_15 into main
Merge version_15 into main
2026-04-16 16:54:08 +00:00
c0a817b43c Update src/app/page.tsx 2026-04-16 16:54:02 +00:00
7234fe2d99 Merge version_14 into main
Merge version_14 into main
2026-04-16 16:53:22 +00:00
6eff575a7c Update src/app/page.tsx 2026-04-16 16:53:19 +00:00
77a69d2a9b Merge version_13 into main
Merge version_13 into main
2026-04-16 16:51:29 +00:00
3a87ce8924 Update src/app/page.tsx 2026-04-16 16:51:22 +00:00
91a89cec1c Merge version_12 into main
Merge version_12 into main
2026-04-16 16:45:18 +00:00
ccea7837a8 Update src/app/page.tsx 2026-04-16 16:45:12 +00:00
dafafa4cfa Merge version_11 into main
Merge version_11 into main
2026-04-16 16:43:26 +00:00
f45dc80dee Update src/app/page.tsx 2026-04-16 16:43:23 +00:00
8481618b5c Merge version_10 into main
Merge version_10 into main
2026-04-16 16:42:11 +00:00
34562e3547 Update src/app/page.tsx 2026-04-16 16:42:08 +00:00
10b2f70044 Merge version_9 into main
Merge version_9 into main
2026-04-16 16:39:28 +00:00
c1a7e012c7 Update src/app/page.tsx 2026-04-16 16:39:25 +00:00
b544a8f516 Merge version_8 into main
Merge version_8 into main
2026-04-16 16:38:23 +00:00
8ef2a51617 Update src/app/page.tsx 2026-04-16 16:38:17 +00:00
cda52caab6 Merge version_8 into main
Merge version_8 into main
2026-04-16 16:36:04 +00:00
dc737307f2 Update theme colors 2026-04-16 16:35:58 +00:00
bc614524be Merge version_7 into main
Merge version_7 into main
2026-04-16 16:35:50 +00:00
ac44fa8a04 Update theme colors 2026-04-16 16:35:47 +00:00
d5495600fe Merge version_6 into main
Merge version_6 into main
2026-04-16 16:35:36 +00:00
e505baebe0 Merge version_5 into main
Merge version_5 into main
2026-04-16 16:32:05 +00:00
58e8d2db55 Merge version_5 into main
Merge version_5 into main
2026-04-16 16:31:37 +00:00
c2fa2fcdc1 Merge version_5 into main
Merge version_5 into main
2026-04-16 16:26:40 +00:00
2d143dd5e7 Merge version_5 into main
Merge version_5 into main
2026-04-16 16:21:58 +00:00
4 changed files with 178 additions and 73 deletions

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

@@ -0,0 +1,55 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import TextSplitAbout from '@/components/sections/about/TextSplitAbout';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
export default function AboutPage() {
return (
<ThemeProvider
defaultButtonVariant="expand-hover"
defaultTextAnimation="background-highlight"
borderRadius="soft"
contentWidth="mediumSmall"
sizing="mediumLargeSizeMediumTitles"
background="blurBottom"
cardStyle="soft-shadow"
primaryButtonStyle="double-inset"
secondaryButtonStyle="layered"
headingFontWeight="extrabold"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarLayoutFloatingOverlay
navItems={[
{ name: "Home", id: "/"},
{ name: "About", id: "/about"},
{ name: "Contact", id: "/contact"},
]}
brandName="Lackawanna"
/>
</div>
<div id="about-content" data-section="about-content" className="pt-32 pb-24">
<TextSplitAbout
title="About Lackawanna Barber Shop"
description={["At Lackawanna, we are dedicated to preserving the art of traditional barbering while serving the modern man. With over two decades of experience, our commitment to quality, community, and precision cuts has made us a cornerstone of Morristown."]}
useInvertedBackground={false}
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoEmphasis
logoText="Lackawanna Barber Shop"
columns={[
{ items: [{ label: "132 Morris St, Morristown, NJ", href: "/contact" }, { label: "+1 (973) 538-1675", href: "tel:+19735381675" }] },
{ items: [{ label: "Services", href: "/#services" }, { label: "Team", href: "/#team" }, { label: "FAQs", href: "/#faq" }] }
]}
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}

59
src/app/contact/page.tsx Normal file
View File

@@ -0,0 +1,59 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import { useRouter } from "next/navigation";
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
import ContactCTA from '@/components/sections/contact/ContactCTA';
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
export default function ContactPage() {
const router = useRouter();
return (
<ThemeProvider
defaultButtonVariant="expand-hover"
defaultTextAnimation="background-highlight"
borderRadius="soft"
contentWidth="mediumSmall"
sizing="mediumLargeSizeMediumTitles"
background="blurBottom"
cardStyle="soft-shadow"
primaryButtonStyle="double-inset"
secondaryButtonStyle="layered"
headingFontWeight="extrabold"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarStyleApple
navItems={[
{ name: "Home", id: "/" },
{ name: "About", id: "/about" },
{ name: "Contact", id: "/contact" }
]}
brandName="Lackawanna"
/>
</div>
<div id="contact-content" data-section="contact-content" className="pt-32 pb-24">
<ContactCTA
tag="Contact"
title="Ready for your next cut?"
description="Stop by our Morristown shop or give us a call at (973) 538-1675 to inquire about wait times."
buttons={[{ text: "Submit", onClick: () => router.push("/") }]}
background={{ variant: "plain" }}
useInvertedBackground={true}
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoReveal
logoText="Lackawanna Barber Shop"
leftLink={{ text: "Contact", href: "/contact" }}
rightLink={{ text: "Home", href: "/" }}
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -2,14 +2,13 @@
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react"; import ReactLenis from "lenis/react";
import ContactText from '@/components/sections/contact/ContactText'; import FaqSplitMedia from '@/components/sections/faq/FaqSplitMedia';
import FaqSplitText from '@/components/sections/faq/FaqSplitText'; import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
import FooterBaseReveal from '@/components/sections/footer/FooterBaseReveal';
import HeroSplitKpi from '@/components/sections/hero/HeroSplitKpi'; import HeroSplitKpi from '@/components/sections/hero/HeroSplitKpi';
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay'; import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import PricingCardEight from '@/components/sections/pricing/PricingCardEight'; import PricingCardEight from '@/components/sections/pricing/PricingCardEight';
import TeamCardFive from '@/components/sections/team/TeamCardFive'; import TeamCardFive from '@/components/sections/team/TeamCardFive';
import TestimonialCardSixteen from '@/components/sections/testimonial/TestimonialCardSixteen'; import TestimonialCardTwo from '@/components/sections/testimonial/TestimonialCardTwo';
export default function LandingPage() { export default function LandingPage() {
return ( return (
@@ -29,12 +28,12 @@ export default function LandingPage() {
<div id="nav" data-section="nav"> <div id="nav" data-section="nav">
<NavbarLayoutFloatingOverlay <NavbarLayoutFloatingOverlay
navItems={[ navItems={[
{ name: "About", id: "about"}, { name: "About", id: "/about"},
{ name: "Services", id: "services"}, { name: "Services", id: "#services"},
{ name: "Team", id: "team"}, { name: "Team", id: "#team"},
{ name: "Testimonials", id: "testimonials"}, { name: "Testimonials", id: "#testimonials"},
{ name: "FAQ", id: "faq"}, { name: "FAQ", id: "#faq"},
{ name: "Contact", id: "contact"}, { name: "Contact", id: "/contact"},
]} ]}
brandName="Lackawanna" brandName="Lackawanna"
/> />
@@ -51,7 +50,7 @@ export default function LandingPage() {
{ value: "100%", label: "Satisfaction"}, { value: "100%", label: "Satisfaction"},
]} ]}
enableKpiAnimation={true} enableKpiAnimation={true}
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CRaO5i0elf1aDIpszoFKWNR31x/uploaded-1776352201800-hefnk77v.jpg" imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CRaO5i0elf1aDIpszoFKWNR31x/uploaded-1776352201800-hefnk77v.jpg?_wi=1"
imageAlt="Lackawanna Barber Shop" imageAlt="Lackawanna Barber Shop"
mediaAnimation="slide-up" mediaAnimation="slide-up"
avatars={[ avatars={[
@@ -71,25 +70,15 @@ export default function LandingPage() {
/> />
</div> </div>
<div id="about" data-section="about" className="py-24 bg-background">
<div className="container mx-auto px-4">
<h2 className="text-3xl font-bold mb-12 text-center">Shop Contact Information</h2>
<div className="text-center py-10">
<p className="text-lg font-medium">Location: Morristown, NJ</p>
<p className="text-lg font-medium">Phone: +1 (973) 538-1675</p>
</div>
</div>
</div>
<div id="services" data-section="services"> <div id="services" data-section="services">
<PricingCardEight <PricingCardEight
animationType="slide-up" animationType="slide-up"
textboxLayout="default" textboxLayout="default"
useInvertedBackground={false} useInvertedBackground={false}
plans={[ plans={[
{ id: "basic", badge: "Classic", price: "$40", subtitle: "Precision Haircut", buttons: [{ text: "Walk-in Only", href: "#contact" }], features: ["Classic Scissor Cut", "Modern Styling", "Expert Consultation"]}, { id: "basic", badge: "Classic", price: "$40", subtitle: "Precision Haircut", features: ["Classic Scissor Cut", "Modern Styling", "Expert Consultation"], buttons: [{text: "Contact Us", href: "/contact"}]},
{ id: "pro", badge: "Premium", price: "$75", subtitle: "Full Grooming Experience", buttons: [{ text: "Walk-in Only", href: "#contact" }], features: ["Precision Haircut", "Beard Trim", "Hot Towel Service", "Relaxed Refresh"]}, { id: "pro", badge: "Premium", price: "$75", subtitle: "Full Grooming Experience", features: ["Precision Haircut", "Beard Trim", "Hot Towel Service", "Relaxed Refresh"], buttons: [{text: "Contact Us", href: "/contact"}]},
{ id: "kids", badge: "Family", price: "$30", subtitle: "Youth Haircut", buttons: [{ text: "Walk-in Only", href: "#contact" }], features: ["Gentle Scissor Cut", "Fast Friendly Service", "Classic Style"]}, { id: "kids", badge: "Family", price: "$30", subtitle: "Youth Haircut", features: ["Gentle Scissor Cut", "Fast Friendly Service", "Classic Style"], buttons: [{text: "Contact Us", href: "/contact"}]},
]} ]}
title="Quality Service, Transparent Price" title="Quality Service, Transparent Price"
description="Simple, honest pricing for the services you need." description="Simple, honest pricing for the services you need."
@@ -111,53 +100,55 @@ export default function LandingPage() {
</div> </div>
<div id="testimonials" data-section="testimonials"> <div id="testimonials" data-section="testimonials">
<TestimonialCardSixteen <TestimonialCardTwo
animationType="slide-up" animationType="slide-up"
textboxLayout="split-description" textboxLayout="default"
useInvertedBackground={false} title="Testimonials"
testimonials={[ description="See what our clients say about our work."
{ id: "1", name: "Barry H.", role: "Loyal Customer", company: "FL", rating: 5 }, testimonials={[
{ id: "2", name: "Melissa C.", role: "Regular Client", company: "NY", rating: 5 }, {
]} id: "1",
kpiItems={[ name: "Client One",
{ value: "100+", label: "Weekly Cuts" }, role: "Local Customer",
{ value: "20+", label: "Years Served" }, testimonial: "Exceptional service and great atmosphere.",
{ value: "5★", label: "Rating Average" }, imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CRaO5i0elf1aDIpszoFKWNR31x/uploaded-1776531377369-oo06t3wn.png"
]} },
title="What Our Clients Say" {
description="We are proud to serve our community and deliver the best cuts in town." id: "2",
name: "Client Two",
role: "Regular Visitor",
testimonial: "Always get a perfect fade here.",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CRaO5i0elf1aDIpszoFKWNR31x/uploaded-1776531377370-5uotcrix.png"
}
]}
/> />
</div> </div>
<div id="faq" data-section="faq"> <div id="faq" data-section="faq">
<FaqSplitText <FaqSplitMedia
useInvertedBackground={false} faqs={[
faqs={[ { id: "q1", title: "Do you accept appointments?", content: "We operate primarily as a walk-in shop to maintain that classic, casual vibe." },
{ id: "q1", title: "Do you accept appointments?", content: "We operate primarily as a walk-in shop to maintain that classic, casual vibe." }, { id: "q2", title: "Is it cash only?", content: "Yes, we are a classic cash-only establishment." },
{ id: "q2", title: "Is it cash only?", content: "Yes, we are a classic cash-only establishment." }, ]}
]} title="Common Questions"
sideTitle="Common Questions" description="Everything you need to know about our barber shop services."
faqsAnimation="blur-reveal" faqsAnimation="slide-up"
/> textboxLayout="default"
</div> mediaPosition="right"
useInvertedBackground={false}
<div id="contact" data-section="contact"> imageSrc="http://img.b2bpic.net/free-photo/front-view-baber-shop-chiar_23-2148506337.jpg"
<ContactText imageAlt="Lackawanna Barber Shop Interior"
useInvertedBackground={false} />
background={{ variant: "sparkles-gradient" }}
text="Ready for your next haircut? Stop by the shop today and meet the team. We look forward to seeing you!"
buttons={[{ text: "+1 (973) 538-1675", href: "tel:+19735381675" }]}
/>
</div> </div>
<div id="footer" data-section="footer"> <div id="footer" data-section="footer">
<FooterBaseReveal <FooterLogoEmphasis
logoText="Lackawanna Barber Shop" logoText="Lackawanna Barber Shop"
columns={[ columns={[
{ title: "Shop", items: [{ label: "Morristown, NJ", href: "#" }] }, { items: [{ label: "132 Morris St, Morristown, NJ", href: "/contact" }, { label: "+1 (973) 538-1675", href: "/contact" }] },
]} { items: [{ label: "Services", href: "/#services" }, { label: "Team", href: "/#team" }, { label: "FAQs", href: "/#faq" }] }
copyrightText="© 2024 Lackawanna Barber Shop. All rights reserved." ]}
/> />
</div> </div>
</ReactLenis> </ReactLenis>
</ThemeProvider> </ThemeProvider>

View File

@@ -10,15 +10,15 @@
--accent: #ffffff; --accent: #ffffff;
--background-accent: #ffffff; */ --background-accent: #ffffff; */
--background: #f7f6f7; --background: #f5f4ef;
--card: #ffffff; --card: #dad6cd;
--foreground: #0c1325; --foreground: #2a2928;
--primary-cta: #0b07ff; --primary-cta: #2a2928;
--primary-cta-text: #f7f6f7; --primary-cta-text: #f5f4ef;
--secondary-cta: #ffffff; --secondary-cta: #ecebea;
--secondary-cta-text: #0c1325; --secondary-cta-text: #2a2928;
--accent: #93b7ff; --accent: #ffffff;
--background-accent: #a8bae8; --background-accent: #c6b180;
/* 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);