4 Commits

Author SHA1 Message Date
7ff7aa5c04 Update src/app/page.tsx 2026-05-06 00:01:07 +00:00
cc1a0bb52b Add src/app/contact/page.tsx 2026-05-06 00:01:06 +00:00
b7b607e056 Add src/app/book/page.tsx 2026-05-06 00:01:06 +00:00
3b9fa3e434 Add src/app/about/page.tsx 2026-05-06 00:01:05 +00:00
4 changed files with 215 additions and 327 deletions

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

@@ -0,0 +1,86 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import InlineImageSplitTextAbout from '@/components/sections/about/InlineImageSplitTextAbout';
import TeamCardTen from '@/components/sections/team/TeamCardTen';
import MetricCardOne from '@/components/sections/metrics/MetricCardOne';
import FooterBaseReveal from '@/components/sections/footer/FooterBaseReveal';
import { Users, BookOpen, Heart, Anchor } from "lucide-react";
export default function AboutPage() {
return (
<ThemeProvider
defaultButtonVariant="elastic-effect"
defaultTextAnimation="background-highlight"
borderRadius="soft"
contentWidth="mediumLarge"
sizing="mediumLarge"
background="noise"
cardStyle="soft-shadow"
primaryButtonStyle="gradient"
secondaryButtonStyle="solid"
headingFontWeight="medium"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarStyleCentered
navItems={[
{ name: "Home", id: "/" },
{ name: "Services", id: "/#features" },
{ name: "About", id: "/about" },
{ name: "Gallery", id: "/#products" },
]}
brandName="Shore & Grain"
/>
</div>
<div id="company-story" data-section="about">
<InlineImageSplitTextAbout
heading={[
{ type: "text", content: "Our Heritage in Coastal Craftsmanship" },
{ type: "image", src: "http://img.b2bpic.net/free-photo/man-working-wood-workshop_23-2148970798.jpg", alt: "Workshop" }
]}
/>
</div>
<div id="values" data-section="metrics">
<MetricCardOne
title="Core Values"
description="Guided by our commitment to precision, integrity, and the timeless beauty of the Florida coast."
gridVariant="uniform-all-items-equal"
animationType="slide-up"
textboxLayout="split"
metrics={[
{ id: "1", value: "Precision", title: "Craftsmanship", description: "Meticulous attention to every detail in wood and tile.", icon: Anchor },
{ id: "2", value: "Integrity", title: "Local Heart", description: "Building trust through transparency and quality service.", icon: Heart },
{ id: "3", value: "Heritage", title: "Legacy", description: "Creating lasting home spaces for generations.", icon: BookOpen }
]}
/>
</div>
<div id="team" data-section="team">
<TeamCardTen
title="Meet Our Master Builders"
tag="The Shore & Grain Team"
memberVariant="card"
members={[
{ id: "1", name: "Alex Rivers", imageSrc: "http://img.b2bpic.net/free-photo/tiler-working-renovation-apartment_23-2149278614.jpg" },
{ id: "2", name: "Jordan Salt", imageSrc: "http://img.b2bpic.net/free-photo/man-working-his-wood-shop-with-tools-equipment_23-2150861559.jpg" }
]}
/>
</div>
<div id="footer" data-section="footer">
<FooterBaseReveal
logoText="Shore & Grain"
columns={[
{ title: "Company", items: [{ label: "Home", href: "/" }, { label: "About", href: "/about" }] }
]}
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}

49
src/app/book/page.tsx Normal file
View File

@@ -0,0 +1,49 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarStyleCentered";
import ContactCenter from "@/components/sections/contact/ContactCenter";
import FooterBaseReveal from "@/components/sections/footer/FooterBaseReveal";
export default function BookPage() {
return (
<ThemeProvider
defaultButtonVariant="elastic-effect"
defaultTextAnimation="background-highlight"
borderRadius="soft"
contentWidth="mediumLarge"
sizing="mediumLarge"
background="noise"
cardStyle="soft-shadow"
primaryButtonStyle="gradient"
secondaryButtonStyle="solid"
headingFontWeight="medium"
>
<ReactLenis root>
<NavbarStyleCentered
navItems={[
{ name: "Home", id: "/" },
{ name: "Book", id: "/book" },
{ name: "Contact", id: "/contact" },
]}
brandName="Shore & Grain"
/>
<div className="pt-32 pb-16">
<ContactCenter
tag="Booking"
title="Schedule Your Project"
description="Let's discuss your carpentry or tiling project. We'll get back to you shortly to confirm your booking."
background={{ variant: "plain" }}
/>
</div>
<FooterBaseReveal
logoText="Shore & Grain"
columns={[
{ title: "Company", items: [{ label: "Home", href: "/" }, { label: "Book", href: "/book" }, { label: "Contact", href: "/contact" }] }
]}
/>
</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 NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarStyleCentered";
import ContactSplit from "@/components/sections/contact/ContactSplit";
import FaqSplitText from "@/components/sections/faq/FaqSplitText";
import FooterBaseReveal from "@/components/sections/footer/FooterBaseReveal";
export default function ContactPage() {
return (
<ThemeProvider
defaultButtonVariant="elastic-effect"
defaultTextAnimation="background-highlight"
borderRadius="soft"
contentWidth="mediumLarge"
sizing="mediumLarge"
background="noise"
cardStyle="soft-shadow"
primaryButtonStyle="gradient"
secondaryButtonStyle="solid"
headingFontWeight="medium"
>
<ReactLenis root>
<NavbarStyleCentered
navItems={[
{ name: "Home", id: "/" },
{ name: "Book", id: "/book" },
{ name: "Contact", id: "/contact" },
]}
brandName="Shore & Grain"
/>
<div className="pt-32">
<ContactSplit
tag="Contact"
title="Get In Touch"
description="We're here to answer your questions and help you plan your next home project."
background={{ variant: "plain" }}
/>
<FaqSplitText
faqs={[
{ id: "1", title: "What service areas do you cover?", content: "We proudly serve the entire Volusia County area." },
{ id: "2", title: "How soon can you start?", content: "Project timelines vary based on current workload, typically within 2-4 weeks." }
]}
sideTitle="Frequently Asked Questions"
faqsAnimation="slide-up"
useInvertedBackground={true}
/>
</div>
<FooterBaseReveal
logoText="Shore & Grain"
columns={[
{ title: "Company", items: [{ label: "Home", href: "/" }, { label: "Book", href: "/book" }, { label: "Contact", href: "/contact" }] }
]}
/>
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -31,117 +31,32 @@ export default function LandingPage() {
<div id="nav" data-section="nav">
<NavbarStyleCentered
navItems={[
{
name: "Home",
id: "hero",
},
{
name: "Services",
id: "features",
},
{
name: "About",
id: "about",
},
{
name: "Gallery",
id: "products",
},
{
name: "Book Now",
id: "contact",
},
{ name: "Home", id: "/" },
{ name: "Services", id: "#features" },
{ name: "About", id: "#about" },
{ name: "Gallery", id: "#products" },
{ name: "Book", id: "/book" },
{ name: "Contact", id: "/contact" },
]}
button={{
text: "Book Free Estimate",
href: "#contact",
}}
button={{ text: "Book Free Estimate", href: "/book" }}
brandName="Shore & Grain"
/>
</div>
<div id="hero" data-section="hero">
<HeroSplit
background={{
variant: "plain",
}}
background={{ variant: "plain" }}
imagePosition="right"
title="Coastal Craftsmanship for Your Home"
description="Expert carpentry and precision tile work throughout Volusia County. We turn your vision into beautiful, lasting home spaces with natural materials and master craftsmanship."
buttons={[
{
text: "Book Free Estimate",
href: "#contact",
},
{
text: "View Gallery",
href: "#products",
},
]}
description="Expert carpentry and precision tile work throughout Volusia County. We turn your vision into beautiful, lasting home spaces."
buttons={[{ text: "Book Free Estimate", href: "/book" }, { text: "View Gallery", href: "#products" }]}
imageSrc="http://img.b2bpic.net/free-photo/man-cutting-watermelon-medium-shot_23-2149638023.jpg"
mediaAnimation="slide-up"
avatars={[
{
src: "http://img.b2bpic.net/free-photo/tiler-working-renovation-apartment_23-2149278614.jpg",
alt: "Satisfied homeowner",
},
{
src: "http://img.b2bpic.net/free-photo/young-woman-having-break-from-work-sitting-kitchen-using-smartphone-girl-studies-home_1258-199919.jpg",
alt: "Happy client",
},
{
src: "http://img.b2bpic.net/free-photo/side-view-man-choosing-color_23-2149721880.jpg",
alt: "Professional contractor",
},
{
src: "http://img.b2bpic.net/free-photo/tiler-working-renovation-apartment_23-2149278618.jpg",
alt: "Renovation team",
},
{
src: "http://img.b2bpic.net/free-photo/man-working-his-wood-shop-with-tools-equipment_23-2150861559.jpg",
alt: "Finished project owner",
},
]}
avatarText="Trusted by 150+ Volusia families"
marqueeItems={[
{
type: "text",
text: "Custom Woodwork",
},
{
type: "text",
text: "Tile Installation",
},
{
type: "text",
text: "Home Renovations",
},
{
type: "text",
text: "Professional Finish",
},
{
type: "text",
text: "Coastal Style",
},
]}
/>
</div>
<div id="about" data-section="about">
<InlineImageSplitTextAbout
useInvertedBackground={false}
heading={[
{
type: "text",
content: "Built with Integrity & Local Heart",
},
{
type: "image",
src: "http://img.b2bpic.net/free-photo/man-working-wood-workshop_23-2148970798.jpg",
alt: "Craftsman at work",
},
]}
heading={[{ type: "text", content: "Built with Integrity & Local Heart" }]}
/>
</div>
@@ -151,35 +66,9 @@ export default function LandingPage() {
textboxLayout="default"
gridVariant="three-columns-all-equal-width"
useInvertedBackground={true}
features={[
{
title: "Custom Carpentry",
description: "From built-ins to trim, we provide precise woodwork.",
imageSrc: "http://img.b2bpic.net/free-photo/man-engraving-wood-outdoors-close-up_23-2149061715.jpg",
},
{
title: "Precision Tiling",
description: "Expert layout and installation for bathrooms, floors, and backsplashes.",
imageSrc: "http://img.b2bpic.net/free-photo/small-bathroom-with-modern-style-ai-generated_23-2150694894.jpg",
},
{
title: "Home Consults",
description: "We help you select materials that fit your home's aesthetic.",
imageSrc: "http://img.b2bpic.net/free-photo/high-angle-view-hand-holding-small-house-model-pencil-blueprint_23-2148203980.jpg",
},
{
title: "Custom Furniture",
description: "Bespoke tables and storage solutions.",
imageSrc: "http://img.b2bpic.net/free-photo/wood-worker-his-shop-working-with-tools-equipment_23-2150861576.jpg",
},
{
title: "Kitchen Refacing",
description: "Giving your cabinets a fresh, updated coastal look.",
imageSrc: "http://img.b2bpic.net/free-photo/carpenter-measuring-with-ruler-pencil_23-2148679131.jpg",
},
]}
title="Our Specialized Services"
description="Whether it's custom interior wood finishes or intricate tiling, our team brings professional care to every project in Volusia County."
description="Professional care for every carpentry and tile project in Volusia County."
features={[]}
/>
</div>
@@ -188,187 +77,29 @@ export default function LandingPage() {
animationType="slide-up"
textboxLayout="default"
gridVariant="three-columns-all-equal-width"
useInvertedBackground={false}
products={[
{
id: "1",
brand: "Carpentry",
name: "Custom Kitchen Cabinetry",
price: "$$$",
rating: 5,
reviewCount: "12",
imageSrc: "http://img.b2bpic.net/free-photo/background-with-empty-wooden-table-with-tablecloth_93675-130865.jpg",
},
{
id: "2",
brand: "Carpentry",
name: "Built-in Bookshelves",
price: "$$",
rating: 5,
reviewCount: "8",
imageSrc: "http://img.b2bpic.net/free-photo/close-up-minimalist-fireplace_23-2148238611.jpg",
},
{
id: "3",
brand: "Tile",
name: "Modern Bathroom Tile",
price: "$$$",
rating: 5,
reviewCount: "15",
imageSrc: "http://img.b2bpic.net/free-photo/photo-ground-texture-pattern_58702-11686.jpg",
},
{
id: "4",
brand: "Carpentry",
name: "Entryway Bench",
price: "$",
rating: 5,
reviewCount: "5",
imageSrc: "http://img.b2bpic.net/free-photo/black-stone-tile-wall-textures_74190-2412.jpg",
},
{
id: "5",
brand: "Tile",
name: "Patterned Backsplash",
price: "$$",
rating: 5,
reviewCount: "10",
imageSrc: "http://img.b2bpic.net/free-photo/people-hands-getting-bottle-red-wine_53876-23320.jpg",
},
{
id: "6",
brand: "Carpentry",
name: "Custom Door Frames",
price: "$$",
rating: 5,
reviewCount: "7",
imageSrc: "http://img.b2bpic.net/free-photo/wood-worker-his-shop-working-with-tools-equipment_23-2150861574.jpg",
},
]}
title="Recent Projects Gallery"
description="Browse our latest carpentry and tile installations across the county."
products={[]}
/>
</div>
<div id="metrics" data-section="metrics">
<MetricCardSeven
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={true}
metrics={[
{
id: "m1",
value: "150+",
title: "Homes Renovated",
items: [
"Kitchens",
"Bathrooms",
"Living Areas",
],
},
{
id: "m2",
value: "10+",
title: "Years Experience",
items: [
"Carpentry",
"Tile Design",
"Install",
],
},
{
id: "m3",
value: "5/5",
title: "Customer Rating",
items: [
"Quality",
"Communication",
"Punctuality",
],
},
]}
title="Our Impact in Volusia County"
description="Committed to quality and community trust."
metrics={[]}
title="Our Impact"
/>
</div>
<div id="testimonials" data-section="testimonials">
<TestimonialCardTwelve
useInvertedBackground={false}
testimonials={[
{
id: "1",
name: "Sarah J.",
imageSrc: "http://img.b2bpic.net/free-photo/portrait-tender-young-smiling-woman-feeling-cozy-home-sitting-kitchen-chair-with-smartphone_1258-199927.jpg",
},
{
id: "2",
name: "Mark D.",
imageSrc: "http://img.b2bpic.net/free-photo/cheerful-daughter-giving-gift-mother-kitchen_23-2147788207.jpg",
},
{
id: "3",
name: "Elena R.",
imageSrc: "http://img.b2bpic.net/free-photo/dad-teaching-his-boy-how-shave_23-2149588744.jpg",
},
{
id: "4",
name: "Kevin T.",
imageSrc: "http://img.b2bpic.net/free-photo/pet-cat-lifestyle-portraits_23-2149169897.jpg",
},
{
id: "5",
name: "Linda M.",
imageSrc: "http://img.b2bpic.net/free-photo/inspired-caucasian-girl-posing-camera-windy-day-sea-outdoor-photo-emotional-blonde-woman-stripped-shirt-posing-nature-background_291650-1777.jpg",
},
]}
testimonials={[]}
cardTitle="What Our Neighbors Say"
cardTag="Testimonials"
cardAnimation="slide-up"
/>
</div>
<div id="faq" data-section="faq">
<FaqSplitMedia
textboxLayout="default"
useInvertedBackground={true}
faqs={[
{
id: "q1",
title: "Do you serve all of Volusia County?",
content: "Yes, we proudly serve all cities and communities within Volusia County.",
},
{
id: "q2",
title: "Can I provide my own materials?",
content: "Yes, we are happy to work with your materials or help you source high-quality options.",
},
{
id: "q3",
title: "How do I get a quote?",
content: "Click the 'Book Free Estimate' button in the navigation to fill out our contact form.",
},
]}
imageSrc="http://img.b2bpic.net/free-photo/top-view-different-types-tools_23-2148428257.jpg"
faqs={[]}
title="Common Questions"
description="Here is what you need to know about our home service process."
faqsAnimation="slide-up"
/>
</div>
<div id="contact" data-section="contact">
<ContactSplit
useInvertedBackground={false}
background={{
variant: "plain",
}}
title="Let's Get Started"
description="Ready to transform your home? Fill out your details below and we'll reach out to discuss your project."
mediaAnimation="slide-up"
mediaPosition="right"
tag="Contact Us"
imageSrc="http://img.b2bpic.net/free-photo/building-blueprints-table_23-2147710828.jpg"
imageAlt="Blueprints and workspace"
/>
</div>
@@ -376,49 +107,12 @@ export default function LandingPage() {
<FooterBaseReveal
logoText="Shore & Grain"
columns={[
{
title: "Company",
items: [
{
label: "Home",
href: "#hero",
},
{
label: "Services",
href: "#features",
},
{
label: "About",
href: "#about",
},
{
label: "Gallery",
href: "#products",
},
{
label: "Book Now",
href: "#contact",
},
],
},
{
title: "Contact",
items: [
{
label: "(386) 555-0123",
href: "tel:3865550123",
},
{
label: "hello@shoregrain.com",
href: "mailto:hello@shoregrain.com",
},
],
},
{ title: "Navigation", items: [{ label: "Home", href: "/" }, { label: "Book", href: "/book" }, { label: "Contact", href: "/contact" }] },
{ title: "Contact", items: [{ label: "(386) 555-0123", href: "tel:3865550123" }] }
]}
copyrightText="© 2026 Shore & Grain. All Rights Reserved."
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}
}