Compare commits
33 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 006ae4c0cb | |||
| 4b23d62f73 | |||
| d1002474f3 | |||
| 8c3aab3959 | |||
| 721b46cde2 | |||
| b9ffc9d6a5 | |||
| 68be6c90ca | |||
| e7bdac001f | |||
| 0275050a84 | |||
| 5c0e39ddb5 | |||
| 7be8de2298 | |||
| 4640a6ff8a | |||
| 7f44a844b7 | |||
| 93dbd56af2 | |||
| f2d3be292c | |||
| 793e5a416f | |||
| b527dc297e | |||
| b0b6837332 | |||
| 9223dd8d40 | |||
| 46be4d6603 | |||
| c60f83ccc0 | |||
| 07da201a60 | |||
| 31959fdcd7 | |||
| 2f4a27613d | |||
| 54521600b1 | |||
| 683abeb434 | |||
| bda3e0e7b9 | |||
| bf446d26ef | |||
| 705942a165 | |||
| 54f72f90ed | |||
| 903493d09c | |||
| 109ff3b00e | |||
| e6c07b1323 |
128
src/app/blog/page.tsx
Normal file
128
src/app/blog/page.tsx
Normal file
@@ -0,0 +1,128 @@
|
||||
"use client";
|
||||
|
||||
import ReactLenis from "lenis/react";
|
||||
import BlogCardOne from "@/components/sections/blog/BlogCardOne";
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import { useBlogPosts } from "@/hooks/useBlogPosts";
|
||||
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
|
||||
import FooterMedia from '@/components/sections/footer/FooterMedia';
|
||||
|
||||
const footerColumns: FooterColumn[] = [
|
||||
{
|
||||
title: "Product",
|
||||
items: [
|
||||
{ label: "Features", href: "/features" },
|
||||
{ label: "Pricing", href: "/pricing" },
|
||||
{ label: "FAQ", href: "/faq" },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Company",
|
||||
items: [
|
||||
{ label: "About", href: "/about" },
|
||||
{ label: "Blog", href: "/blog" },
|
||||
{ label: "Careers", href: "/careers" },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Resources",
|
||||
items: [
|
||||
{ label: "Documentation", href: "/docs" },
|
||||
{ label: "Support", href: "/support" },
|
||||
{ label: "Contact", href: "/contact" },
|
||||
],
|
||||
},
|
||||
];
|
||||
|
||||
export default function BlogPage() {
|
||||
const { posts, isLoading } = useBlogPosts();
|
||||
|
||||
return (
|
||||
<ThemeProvider defaultButtonVariant="text-shift"
|
||||
defaultTextAnimation="entrance-slide"
|
||||
borderRadius="rounded"
|
||||
contentWidth="mediumLarge"
|
||||
sizing="largeSmallSizeLargeTitles"
|
||||
background="none"
|
||||
cardStyle="outline"
|
||||
primaryButtonStyle="radial-glow"
|
||||
secondaryButtonStyle="glass"
|
||||
headingFontWeight="extrabold">
|
||||
<ReactLenis root>
|
||||
<div id="nav" data-section="nav">
|
||||
|
||||
<NavbarLayoutFloatingOverlay navItems={[
|
||||
{
|
||||
name: "Home", id: "hero"},
|
||||
{
|
||||
name: "Services", id: "services"},
|
||||
{
|
||||
name: "Prices", id: "pricing"},
|
||||
{
|
||||
name: "Contact", id: "contact"},
|
||||
]}
|
||||
brandName="Doc Barnet Grooming Salon"
|
||||
button={{
|
||||
text: "BOOK NOW", href: bookingUrl}} />
|
||||
</div>
|
||||
|
||||
{isLoading ? (
|
||||
<div className="w-content-width mx-auto py-20 text-center">
|
||||
<p className="text-foreground">Loading posts...</p>
|
||||
</div>
|
||||
) : (
|
||||
<div id="blog" data-section="blog">
|
||||
<BlogCardOne
|
||||
blogs={posts}
|
||||
title="Latest Articles"
|
||||
description="Stay updated with our latest insights"
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={false}
|
||||
carouselMode="buttons"
|
||||
animationType="slide-up"
|
||||
/>
|
||||
</div>
|
||||
)}
|
||||
|
||||
<div id="footer" data-section="footer">
|
||||
|
||||
<FooterMedia imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DMGxfgFdRWLXzYqe2HfYt6JE4x/uploaded-1778094604107-kwe3q62f.jpg"
|
||||
logoText="DOC BARNET"
|
||||
columns={[
|
||||
{
|
||||
title: "Services", items: [
|
||||
{
|
||||
label: "Gents Hair", href: "#services"},
|
||||
{
|
||||
label: "Ladies Cut", href: "#services"},
|
||||
{
|
||||
label: "Beard Grooming", href: "#services"},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Company", items: [
|
||||
{
|
||||
label: "About Us", href: "#about"},
|
||||
{
|
||||
label: "Contact", href: "#contact"},
|
||||
{
|
||||
label: "Book Now", href: bookingUrl},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Social", items: [
|
||||
{
|
||||
label: "Instagram", href: "https://www.instagram.com/docbarnet?igsh=MWMwdHBnamFibXc3Yw%3D%3D&utm_source=qr"},
|
||||
{
|
||||
label: "Facebook", href: "#"},
|
||||
{
|
||||
label: "Privacy Policy", href: "#"},
|
||||
],
|
||||
},
|
||||
]} />
|
||||
</div>
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 87 KiB |
@@ -4,15 +4,15 @@ 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 { Public_Sans } from "next/font/google";
|
||||
import { Roboto } from "next/font/google";
|
||||
|
||||
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: 'Doc Barnet | Premium Grooming Salon Gloucester',
|
||||
description: 'Experience premium barbering, ladies hair, and grooming at Doc Barnet Gloucester Quays. Now open.',
|
||||
title: "Doc Barnet Grooming Salon | Premium Barber & Hair Salon Gloucester Quays",
|
||||
description: "Luxury barbering, ladies hair, skin fades, beard grooming, and modern hair styling at Doc Barnet Grooming Salon in Gloucester Quays. EST. 2007. Book online today.",
|
||||
openGraph: {
|
||||
"title": "Doc Barnet Grooming Salon",
|
||||
"siteName": "Doc Barnet",
|
||||
@@ -20,13 +20,13 @@ export const metadata: Metadata = {
|
||||
},
|
||||
};
|
||||
|
||||
const publicSans = Public_Sans({
|
||||
variable: "--font-public-sans",
|
||||
subsets: ["latin"],
|
||||
});
|
||||
const inter = Inter({
|
||||
variable: "--font-inter",
|
||||
|
||||
|
||||
|
||||
const roboto = Roboto({
|
||||
variable: "--font-roboto",
|
||||
subsets: ["latin"],
|
||||
weight: ["100", "300", "400", "500", "700", "900"],
|
||||
});
|
||||
|
||||
export default function RootLayout({
|
||||
@@ -37,8 +37,8 @@ export default function RootLayout({
|
||||
return (
|
||||
<html lang="en" suppressHydrationWarning>
|
||||
<ServiceWrapper>
|
||||
<body className={`${publicSans.variable} ${inter.variable} antialiased`}>
|
||||
<Tag />
|
||||
<body className={`${roboto.variable} antialiased`}>
|
||||
|
||||
{children}
|
||||
<script
|
||||
dangerouslySetInnerHTML={{
|
||||
|
||||
@@ -14,6 +14,8 @@ import ProductCardTwo from '@/components/sections/product/ProductCardTwo';
|
||||
import TestimonialCardSixteen from '@/components/sections/testimonial/TestimonialCardSixteen';
|
||||
|
||||
export default function LandingPage() {
|
||||
const bookingUrl = "https://www.fresha.com/book-now/doc-barnet-hair-studio-tzv4uhw7/all-offer?share=true&pId=2750001";
|
||||
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="text-shift"
|
||||
@@ -39,11 +41,12 @@ export default function LandingPage() {
|
||||
name: "Prices", id: "pricing"},
|
||||
{
|
||||
name: "Contact", id: "contact"},
|
||||
]}
|
||||
brandName="DOC BARNET"
|
||||
logoSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DMGxfgFdRWLXzYqe2HfYt6JE4x/uploaded-1778085314330-0z5ji9s5.jpg"
|
||||
|
||||
{ name: "Blog", id: "/blog" },
|
||||
]}
|
||||
brandName="Doc Barnet Grooming Salon"
|
||||
button={{
|
||||
text: "BOOK NOW", href: "#contact"}}
|
||||
text: "BOOK NOW", href: bookingUrl}}
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -73,21 +76,21 @@ export default function LandingPage() {
|
||||
]}
|
||||
buttons={[
|
||||
{
|
||||
text: "BOOK NOW", href: "#contact"},
|
||||
text: "BOOK NOW", href: bookingUrl},
|
||||
{
|
||||
text: "VIEW PRICES", href: "#pricing"},
|
||||
]}
|
||||
imageSrc="http://img.b2bpic.net/free-photo/close-up-details-hairdresser-salon_23-2149205856.jpg"
|
||||
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DMGxfgFdRWLXzYqe2HfYt6JE4x/uploaded-1778093237434-05qgab2c.jpg"
|
||||
imageAlt="Doc Barnet Luxury Salon"
|
||||
avatars={[
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/shaving-process-small-dog-sits-table-dog-shaved-by-professional_1157-48807.jpg", alt: "Shaving process"},
|
||||
src: "https://img.b2bpic.net/free-photo/high-fashion-portrait-young-elegant-blonde-woman-black-wool-hat-wearing-oversize-white-fringe-poncho-with-long-grey-dress_273443-3799.jpg?id=11195909", alt: "Shaving process"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/haircuting-process-small-dog-sits-table-dog-with-professional_1157-48820.jpg", alt: "Haircut process"},
|
||||
src: "https://img.b2bpic.net/free-photo/fashion-studio-image-two-young-women-stylish-casual-spring-outfit-having-fun-show-tongue-bright-trendy-colors-stylish-hairstyle-with-buns-cool-sunglasses-friends-portrait_273443-1142.jpg?id=9331369", alt: "Haircut process"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/person-creating-online-content-with-their-pets_23-2151420269.jpg", alt: "Creative content"},
|
||||
src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DMGxfgFdRWLXzYqe2HfYt6JE4x/uploaded-1779125338765-fdbqo198.jpg", alt: "Creative content"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/washing-process-small-dog-sits-table-dog-spaying-by-professional_1157-48817.jpg", alt: "Washing process"},
|
||||
src: "https://img.b2bpic.net/free-photo/three-young-beautiful-smiling-girls-trendy-summer-casual-jeans-clothes-sexy-carefree-women-posing-positive-models-sunglasses_158538-4730.jpg?id=6601657", alt: "Washing process"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/handsome-afro-american-traveler-brown-jacket-hat-with-backpack-stands-studio-isolated-dark-background_613910-6586.jpg", alt: "Stylish traveler"},
|
||||
]}
|
||||
@@ -132,9 +135,9 @@ export default function LandingPage() {
|
||||
{
|
||||
title: "Gents Haircuts", description: "Precision styling tailored to your unique look.", imageSrc: "http://img.b2bpic.net/free-photo/studio-portrait-fashionable-modern-male-grey-t-shirt_613910-532.jpg", imageAlt: "Gents Haircut"},
|
||||
{
|
||||
title: "Ladies Styling", description: "Wash, cut, and blow dry services for sophisticated style.", imageSrc: "http://img.b2bpic.net/free-photo/woman-with-hairdryer-hairbrush_1385-2900.jpg", imageAlt: "Ladies Styling"},
|
||||
title: "Ladies Styling", description: "Wash, cut, and blow dry services for sophisticated style.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DMGxfgFdRWLXzYqe2HfYt6JE4x/tmp/hairstyle-holding-hair-drayer-1779125588683-ef4b646b.png", imageAlt: "Ladies Styling"},
|
||||
{
|
||||
title: "Beard & Facial", description: "Expert beard shaping, hot towel shaves, and facial treatments.", imageSrc: "http://img.b2bpic.net/free-photo/woman-helping-man-applying-facial-mask_23-2148784320.jpg", imageAlt: "Facial treatment"},
|
||||
title: "Beard & Facial", description: "Expert beard shaping, hot towel shaves, and facial treatments.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DMGxfgFdRWLXzYqe2HfYt6JE4x/uploaded-1779127917991-ff4pbcfh.jpg", imageAlt: "Facial treatment"},
|
||||
]}
|
||||
title="PREMIUM SERVICES"
|
||||
description="Comprehensive grooming and hair solutions for gentlemen and ladies."
|
||||
@@ -148,17 +151,17 @@ export default function LandingPage() {
|
||||
useInvertedBackground={false}
|
||||
plans={[
|
||||
{
|
||||
id: "p1", badge: "Most Popular", price: "£35", subtitle: "Premium Haircut & Styling", buttons: [
|
||||
id: "p1", badge: "Most Popular", price: "£19.99", subtitle: "Premium Haircut & Styling", buttons: [
|
||||
{
|
||||
text: "Book Now", href: "#contact"},
|
||||
text: "Book Now", href: bookingUrl},
|
||||
],
|
||||
features: [
|
||||
"Consultation", "Precision Cut", "Style Advice", "Finish"],
|
||||
},
|
||||
{
|
||||
id: "p2", badge: "Essential", price: "£55", subtitle: "Cut, Wash & Blow Dry", buttons: [
|
||||
id: "p2", badge: "Essential", price: "£45", subtitle: "Cut, Wash & Blow Dry", buttons: [
|
||||
{
|
||||
text: "Book Now", href: "#contact"},
|
||||
text: "Book Now", href: bookingUrl},
|
||||
],
|
||||
features: [
|
||||
"Head Massage", "Professional Cut", "Styling"],
|
||||
@@ -166,7 +169,7 @@ export default function LandingPage() {
|
||||
{
|
||||
id: "p3", badge: "Luxury", price: "£85", subtitle: "Balayage & Treatment", buttons: [
|
||||
{
|
||||
text: "Book Now", href: "#contact"},
|
||||
text: "Book Now", href: bookingUrl},
|
||||
],
|
||||
features: [
|
||||
"Consultation", "Expert Colour", "Treatment", "Finish"],
|
||||
@@ -250,7 +253,7 @@ export default function LandingPage() {
|
||||
variant: "gradient-bars"}}
|
||||
tag="LIMITED OFFER"
|
||||
title="20% OFF YOUR FIRST VISIT"
|
||||
description="Join our club and enjoy premium grooming at a special introductory rate."
|
||||
description="TUSDAY ONLY CODE: DOCBARNET20 "
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -276,7 +279,7 @@ export default function LandingPage() {
|
||||
|
||||
<div id="footer" data-section="footer">
|
||||
<FooterMedia
|
||||
imageSrc="http://img.b2bpic.net/free-photo/minimalist-background_23-2151967093.jpg"
|
||||
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DMGxfgFdRWLXzYqe2HfYt6JE4x/uploaded-1778094604107-kwe3q62f.jpg"
|
||||
logoText="DOC BARNET"
|
||||
columns={[
|
||||
{
|
||||
@@ -296,13 +299,13 @@ export default function LandingPage() {
|
||||
{
|
||||
label: "Contact", href: "#contact"},
|
||||
{
|
||||
label: "Book Now", href: "#contact"},
|
||||
label: "Book Now", href: bookingUrl},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Social", items: [
|
||||
{
|
||||
label: "Instagram", href: "#"},
|
||||
label: "Instagram", href: "https://www.instagram.com/docbarnet?igsh=MWMwdHBnamFibXc3Yw%3D%3D&utm_source=qr"},
|
||||
{
|
||||
label: "Facebook", href: "#"},
|
||||
{
|
||||
|
||||
@@ -11,7 +11,7 @@ html {
|
||||
body {
|
||||
background-color: var(--background);
|
||||
color: var(--foreground);
|
||||
font-family: var(--font-inter), sans-serif;
|
||||
font-family: var(--font-roboto), sans-serif;
|
||||
position: relative;
|
||||
min-height: 100vh;
|
||||
overscroll-behavior: none;
|
||||
@@ -24,5 +24,5 @@ h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
font-family: var(--font-public-sans), sans-serif;
|
||||
font-family: var(--font-roboto), sans-serif;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user