16 Commits

Author SHA1 Message Date
0eff2338f8 Update src/app/page.tsx 2026-04-16 16:32:02 +00:00
a4a5b51d72 Update src/app/page.tsx 2026-04-16 16:31:34 +00:00
1f3817b736 Update src/app/page.tsx 2026-04-16 16:26:37 +00:00
dab70193db Update src/app/page.tsx 2026-04-16 16:21:55 +00:00
577b896a03 Merge version_4 into main
Merge version_4 into main
2026-04-16 15:20:49 +00:00
4d87759c06 Update src/app/page.tsx 2026-04-16 15:20:43 +00:00
5168a5cfa1 Merge version_3 into main
Merge version_3 into main
2026-04-16 15:19:00 +00:00
21a9dd2de9 Remove watermark 2026-04-16 15:18:57 +00:00
1dd4b7fdeb Merge version_3 into main
Merge version_3 into main
2026-04-16 15:16:46 +00:00
60a954b01b Update src/app/page.tsx 2026-04-16 15:16:43 +00:00
582cdee74d Merge version_3 into main
Merge version_3 into main
2026-04-16 15:10:17 +00:00
f2313a01a0 Update src/app/page.tsx 2026-04-16 15:10:14 +00:00
33ef5db7f8 Merge version_2 into main
Merge version_2 into main
2026-04-16 15:04:37 +00:00
1fdcc85817 Update src/app/page.tsx 2026-04-16 15:04:34 +00:00
bcc4522657 Merge version_2 into main
Merge version_2 into main
2026-04-16 15:04:13 +00:00
5b2d26cb6f Update src/app/page.tsx 2026-04-16 15:04:10 +00:00
2 changed files with 48 additions and 282 deletions

View File

@@ -4,7 +4,6 @@ import { Inter } from "next/font/google";
import "./globals.css";
import "@/lib/gsap-setup";
import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
import { getVisualEditScript } from "@/utils/visual-edit-script";
import { Manrope } from "next/font/google";
import { DM_Sans } from "next/font/google";
@@ -39,7 +38,7 @@ export default function RootLayout({
<html lang="en" suppressHydrationWarning>
<ServiceWrapper>
<body className={`${manrope.variable} ${dmSans.variable} antialiased`}>
<Tag />
{children}
<script
dangerouslySetInnerHTML={{

View File

@@ -8,7 +8,6 @@ import FooterBaseReveal from '@/components/sections/footer/FooterBaseReveal';
import HeroSplitKpi from '@/components/sections/hero/HeroSplitKpi';
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import PricingCardEight from '@/components/sections/pricing/PricingCardEight';
import SplitAbout from '@/components/sections/about/SplitAbout';
import TeamCardFive from '@/components/sections/team/TeamCardFive';
import TestimonialCardSixteen from '@/components/sections/testimonial/TestimonialCardSixteen';
@@ -30,30 +29,12 @@ export default function LandingPage() {
<div id="nav" data-section="nav">
<NavbarLayoutFloatingOverlay
navItems={[
{
name: "About",
id: "#about",
},
{
name: "Services",
id: "#services",
},
{
name: "Team",
id: "#team",
},
{
name: "Testimonials",
id: "#testimonials",
},
{
name: "FAQ",
id: "#faq",
},
{
name: "Contact",
id: "#contact",
},
{ name: "About", id: "about"},
{ name: "Services", id: "services"},
{ name: "Team", id: "team"},
{ name: "Testimonials", id: "testimonials"},
{ name: "FAQ", id: "faq"},
{ name: "Contact", id: "contact"},
]}
brandName="Lackawanna"
/>
@@ -61,100 +42,43 @@ export default function LandingPage() {
<div id="hero" data-section="hero">
<HeroSplitKpi
background={{
variant: "downward-rays-static",
}}
background={{ variant: "downward-rays-static"}}
title="Classic Style, Contemporary Precision."
description="At Lackawanna, we blend old-school charm with modern barbering. Experience the best cut in Morristown from barbers who actually care about your look."
kpis={[
{
value: "20+",
label: "Years Experience",
},
{
value: "10/10",
label: "Recommend Rate",
},
{
value: "100%",
label: "Satisfaction",
},
{ value: "20+", label: "Years Experience"},
{ value: "10/10", label: "Recommend Rate"},
{ value: "100%", label: "Satisfaction"},
]}
enableKpiAnimation={true}
imageSrc="http://img.b2bpic.net/free-photo/barber-shop-retro-vintage-style_1150-17931.jpg"
imageAlt="Lackawanna Barber Shop Interior"
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CRaO5i0elf1aDIpszoFKWNR31x/uploaded-1776352201800-hefnk77v.jpg"
imageAlt="Lackawanna Barber Shop"
mediaAnimation="slide-up"
avatars={[
{
src: "http://img.b2bpic.net/free-photo/retro-theatre-scene-celebrate-world-theatre-day_23-2151211458.jpg",
alt: "Retro theatre scene to celebrate world theatre day",
},
{
src: "http://img.b2bpic.net/free-photo/tall-bar-stool-wooden-background_181624-30147.jpg",
alt: "Tall bar stool on a wooden background",
},
{
src: "http://img.b2bpic.net/free-photo/hair-salon-chair-with-towel-armchair_23-2148242777.jpg",
alt: "Hair salon chair with towel on armchair",
},
{
src: "http://img.b2bpic.net/free-photo/retro-world-theatre-day-scenes-with-backstage_23-2151211363.jpg",
alt: "Retro world theatre day scenes with a backstage",
},
{
src: "http://img.b2bpic.net/free-photo/client-barber-greeting-each-other-barbershop_23-2148181951.jpg",
alt: "Client and barber greeting each other at barbershop",
},
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CRaO5i0elf1aDIpszoFKWNR31x/uploaded-1776352201800-hefnk77v.jpg", alt: "Barber shop interior"},
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CRaO5i0elf1aDIpszoFKWNR31x/uploaded-1776352201801-bp8o0yyb.jpg", alt: "Detail view"},
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CRaO5i0elf1aDIpszoFKWNR31x/uploaded-1776352201801-l2nw3w51.jpg", alt: "Chair and tools"},
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CRaO5i0elf1aDIpszoFKWNR31x/uploaded-1776352201801-opcyony6.jpg", alt: "Shop perspective"},
]}
avatarText="Join 500+ satisfied clients"
marqueeItems={[
{
type: "text",
text: "Classic Cuts",
},
{
type: "text",
text: "Hot Towel Shave",
},
{
type: "text",
text: "Beard Grooming",
},
{
type: "text",
text: "Expert Fades",
},
{
type: "text",
text: "Precision Styling",
},
{ type: "text", text: "Classic Cuts" },
{ type: "text", text: "Hot Towel Shave" },
{ type: "text", text: "Beard Grooming" },
{ type: "text", text: "Expert Fades" },
{ type: "text", text: "Precision Styling" },
]}
/>
</div>
<div id="about" data-section="about">
<SplitAbout
textboxLayout="split"
useInvertedBackground={false}
title="More Than Just a Haircut"
description="We are a throwback barber shop where you can get a classic men's cut, beard trim, or a hot towel shave. We treat you like family, ensuring you leave with both the cut you wanted and the confidence you deserve."
bulletPoints={[
{
title: "Old School Values",
description: "Classic techniques combined with current styling trends.",
},
{
title: "Warm Environment",
description: "Friendly, sociable atmosphere where you feel right at home.",
},
{
title: "Expert Care",
description: "Knowledgeable barbers who understand every hair type.",
},
]}
imageSrc="http://img.b2bpic.net/free-photo/side-view-man-hair-salon_23-2150665451.jpg"
mediaAnimation="blur-reveal"
/>
<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">
@@ -163,58 +87,9 @@ export default function LandingPage() {
textboxLayout="default"
useInvertedBackground={false}
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: "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: "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: "basic", badge: "Classic", price: "$40", subtitle: "Precision Haircut", buttons: [{ text: "Walk-in Only", href: "#contact" }], features: ["Classic Scissor Cut", "Modern Styling", "Expert Consultation"]},
{ 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: "kids", badge: "Family", price: "$30", subtitle: "Youth Haircut", buttons: [{ text: "Walk-in Only", href: "#contact" }], features: ["Gentle Scissor Cut", "Fast Friendly Service", "Classic Style"]},
]}
title="Quality Service, Transparent Price"
description="Simple, honest pricing for the services you need."
@@ -227,27 +102,11 @@ export default function LandingPage() {
textboxLayout="default"
useInvertedBackground={false}
team={[
{
id: "t1",
name: "John Franco",
role: "Master Barber",
imageSrc: "http://img.b2bpic.net/free-photo/pleased-looking-down-young-beautiful-female-barber-uniform-wearing-glasses-combing-hair-isolated-blue-wall_141793-106074.jpg",
},
{
id: "t2",
name: "Elio",
role: "Old School Specialist",
imageSrc: "http://img.b2bpic.net/free-photo/portrait-man-with-tattoo-his-face-with-crossed-arms-dressed-white-shirt-grey-background_613910-1374.jpg",
},
{
id: "t3",
name: "The New Crew",
role: "Modern Stylists",
imageSrc: "http://img.b2bpic.net/free-photo/close-up-hairdresser-making-haircut_23-2149220581.jpg",
},
{ id: "t1", name: "John Franco", role: "Master Barber", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CRaO5i0elf1aDIpszoFKWNR31x/uploaded-1776352542504-tkr21jqa.png"},
{ id: "t2", name: "Elio", role: "Old School Specialist", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3CRaO5i0elf1aDIpszoFKWNR31x/uploaded-1776352566826-2nyt55b1.jpg"},
]}
title="Meet Your Barbers"
description="Classy, skilled, and sociable our team is here to give you the best experience in Morristown."
title="Meet Your Staff"
description="Our dedicated team is here to ensure you get the absolute best service in Morristown."
/>
</div>
@@ -257,60 +116,13 @@ export default function LandingPage() {
textboxLayout="split-description"
useInvertedBackground={false}
testimonials={[
{
id: "1",
name: "Barry H.",
role: "Loyal Customer",
company: "FL, FL",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/young-handsome-man-black-polo-shirt-swinging-paint-brush-with-aggressive-expression-standing-white-background_141793-20662.jpg",
},
{
id: "2",
name: "Melissa C.",
role: "Regular Client",
company: "New York, NY",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/back-view-father-son-shaving_23-2149434975.jpg",
},
{
id: "3",
name: "Aidan D.",
role: "Customer",
company: "Morristown, NJ",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/happy-men-bachelor-party_23-2149275459.jpg",
},
{
id: "4",
name: "Justin D.",
role: "Long-time Client",
company: "Morristown, NJ",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/drunk-friends-call-waiter_171337-19383.jpg",
},
{
id: "5",
name: "Jay V.",
role: "First-time Visitor",
company: "Little Falls, NJ",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/excited-young-male-barber-wearing-glasses-red-shirt-barber-apron-holding-barbering-tools-looking-camera-showing-thumb-up-isolated-blue-background_141793-138548.jpg",
},
{ id: "1", name: "Barry H.", role: "Loyal Customer", company: "FL", rating: 5 },
{ id: "2", name: "Melissa C.", role: "Regular Client", company: "NY", rating: 5 },
]}
kpiItems={[
{
value: "100+",
label: "Weekly Cuts",
},
{
value: "20+",
label: "Years Served",
},
{
value: "5★",
label: "Rating Average",
},
{ value: "100+", label: "Weekly Cuts" },
{ value: "20+", label: "Years Served" },
{ value: "5★", label: "Rating Average" },
]}
title="What Our Clients Say"
description="We are proud to serve our community and deliver the best cuts in town."
@@ -321,21 +133,8 @@ export default function LandingPage() {
<FaqSplitText
useInvertedBackground={false}
faqs={[
{
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: "q3",
title: "Are you a salon or a barber shop?",
content: "We are a traditional barber shop no salon fluff, just great cuts.",
},
{ 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." },
]}
sideTitle="Common Questions"
faqsAnimation="blur-reveal"
@@ -345,16 +144,9 @@ export default function LandingPage() {
<div id="contact" data-section="contact">
<ContactText
useInvertedBackground={false}
background={{
variant: "sparkles-gradient",
}}
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: "Visit Us Today",
href: "#",
},
]}
buttons={[{ text: "+1 (973) 538-1675", href: "tel:+19735381675" }]}
/>
</div>
@@ -362,32 +154,7 @@ export default function LandingPage() {
<FooterBaseReveal
logoText="Lackawanna Barber Shop"
columns={[
{
title: "Shop",
items: [
{
label: "Morristown, NJ",
href: "#",
},
{
label: "Cash Only",
href: "#",
},
],
},
{
title: "Social",
items: [
{
label: "Instagram",
href: "#",
},
{
label: "Facebook",
href: "#",
},
],
},
{ title: "Shop", items: [{ label: "Morristown, NJ", href: "#" }] },
]}
copyrightText="© 2024 Lackawanna Barber Shop. All rights reserved."
/>
@@ -395,4 +162,4 @@ export default function LandingPage() {
</ReactLenis>
</ThemeProvider>
);
}
}