7 Commits

Author SHA1 Message Date
b7050956a1 Update src/app/contact/page.tsx 2026-05-02 22:54:50 +00:00
e3a4e9f3f4 Update src/app/about/page.tsx 2026-05-02 22:54:50 +00:00
265a44fee0 Update src/app/page.tsx 2026-05-02 22:54:21 +00:00
b1d9b96013 Update src/app/contact/page.tsx 2026-05-02 22:54:20 +00:00
0a24db654f Add src/app/about/page.tsx 2026-05-02 22:54:20 +00:00
70d6d06364 Merge version_1 into main
Merge version_1 into main
2026-05-02 22:35:46 +00:00
0ea45d8bfa Merge version_1 into main
Merge version_1 into main
2026-05-02 22:35:23 +00:00
3 changed files with 115 additions and 168 deletions

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

@@ -0,0 +1,56 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
import MediaAbout from '@/components/sections/about/MediaAbout';
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
export default function AboutPage() {
return (
<ThemeProvider
defaultButtonVariant="elastic-effect"
defaultTextAnimation="background-highlight"
borderRadius="soft"
contentWidth="compact"
sizing="largeSmall"
background="aurora"
cardStyle="gradient-mesh"
primaryButtonStyle="flat"
secondaryButtonStyle="solid"
headingFontWeight="normal"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarStyleApple
navItems={[
{ name: "Home", id: "/" },
{ name: "About", id: "/about" },
{ name: "Services", id: "/services" },
{ name: "Contact", id: "/contact" },
]}
brandName="ApexRoofing"
/>
</div>
<div id="about" data-section="about">
<MediaAbout
title="Our Story: Integrity in Every Shingle"
description="Founded on the principles of honesty, hard work, and technical excellence, Apex Roofing has become the premier choice for San Jose homeowners. We believe your roof is the most important shield for your family and assets, and we treat it with the respect it deserves."
imageSrc="http://img.b2bpic.net/free-photo/construction-people-working-roof_23-2149343666.jpg"
tag="About Us"
useInvertedBackground={false}
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoReveal
logoText="Apex Roofing © 2024"
leftLink={{ text: "Licensed & Insured", href: "#" }}
rightLink={{ text: "555-555-5555", href: "tel:5555555555" }}
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -2,13 +2,11 @@
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import AboutMetric from '@/components/sections/about/AboutMetric';
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
import ContactText from '@/components/sections/contact/ContactText';
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
import { Check, MapPin, PhoneCall, Zap } from "lucide-react";
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
export default function LandingPage() {
export default function ContactPage() {
return (
<ThemeProvider
defaultButtonVariant="elastic-effect"
@@ -23,110 +21,36 @@ export default function LandingPage() {
headingFontWeight="normal"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarStyleApple
navItems={[
{
name: "Home",
id: "/",
},
{
name: "Services",
id: "/services",
},
{
name: "Contact",
id: "/contact",
},
]}
brandName="ApexRoofing"
/>
</div>
<div id="nav" data-section="nav">
<NavbarStyleApple
navItems={[
{ name: "Home", id: "/" },
{ name: "About", id: "/about" },
{ name: "Services", id: "/services" },
{ name: "Contact", id: "/contact" },
]}
brandName="ApexRoofing"
/>
</div>
<div id="contact-page-form" data-section="contact-page-form">
<ContactSplitForm
useInvertedBackground={false}
title="Get Your Free Roof Inspection"
description="We typically respond within minutes. Let's solve your roofing needs today."
inputs={[
{
name: "name",
type: "text",
placeholder: "Name",
required: true,
},
{
name: "phone",
type: "tel",
placeholder: "Phone",
required: true,
},
{
name: "email",
type: "email",
placeholder: "Email",
required: true,
},
{
name: "address",
type: "text",
placeholder: "San Jose Address",
required: true,
},
]}
textarea={{
name: "message",
placeholder: "Describe your roofing issue",
required: true,
}}
imageSrc="http://img.b2bpic.net/free-photo/blending-futuristic-building-seamlessly-into-desert-landscape_23-2151248316.jpg?_wi=2"
/>
</div>
<div id="contact" data-section="contact">
<ContactText
text="Ready to restore your roof? Get in touch with our expert team for a free consultation and professional inspection today."
background={{ variant: "downward-rays-animated" }}
buttons={[{ text: "Submit Request" }]}
className="py-20"
useInvertedBackground={false}
/>
</div>
<div id="about" data-section="about">
<AboutMetric
useInvertedBackground={false}
title="Why Call Us Today?"
metrics={[
{
icon: Zap,
label: "Fast Response",
value: "30 Min",
},
{
icon: PhoneCall,
label: "Local Support",
value: "24/7",
},
{
icon: MapPin,
label: "Service Areas",
value: "All SJ",
},
{
icon: Check,
label: "Free Estimates",
value: "Daily",
},
]}
metricsAnimation="slide-up"
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoReveal
logoText="Apex Roofing © 2024"
leftLink={{
text: "Licensed & Insured",
href: "#",
}}
rightLink={{
text: "555-555-5555",
href: "tel:5555555555",
}}
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoReveal
logoText="Apex Roofing © 2024"
leftLink={{ text: "Licensed & Insured", href: "#" }}
rightLink={{ text: "555-555-5555", href: "tel:5555555555" }}
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}
}

View File

@@ -28,12 +28,9 @@ export default function LandingPage() {
<div id="nav" data-section="nav">
<NavbarStyleApple
navItems={[
{
name: "Home", id: "/"},
{
name: "Services", id: "/services"},
{
name: "Contact", id: "/contact"},
{ name: "Home", id: "/" },
{ name: "Services", id: "/services" },
{ name: "Contact", id: "/contact" },
]}
brandName="ApexRoofing"
/>
@@ -41,41 +38,28 @@ export default function LandingPage() {
<div id="hero" data-section="hero">
<HeroBillboard
background={{
variant: "gradient-bars"}}
background={{ variant: "gradient-bars" }}
title="Roofing You Can Trust When It Matters Most"
description="From storm damage to complex leaks, Apex Roofing delivers fast, precise, and professional roofing solutions across San Jose."
buttons={[
{
text: "Get Free Roof Inspection", href: "/contact"},
{
text: "Call Now", href: "tel:5555555555"},
{ text: "Get Free Roof Inspection", href: "/contact" },
{ text: "Call Now", href: "tel:5555555555" },
]}
imageSrc="http://img.b2bpic.net/free-photo/blending-futuristic-building-seamlessly-into-desert-landscape_23-2151248316.jpg"
avatars={[
{
src: "http://img.b2bpic.net/free-photo/modern-country-houses-construction_1385-20.jpg", alt: "Modern country houses under construction"},
{
src: "http://img.b2bpic.net/free-photo/aerial-shot-town-with-high-buildings-tennis-court_181624-46523.jpg", alt: "Aerial shot of a town with high buildings and a tennis court"},
{
src: "http://img.b2bpic.net/free-photo/abandoned-hut-stands-amidst-spooky-winter-landscape-generated-by-ai_188544-11816.jpg", alt: "Abandoned hut stands amidst spooky winter landscape generated by AI"},
{
src: "http://img.b2bpic.net/free-photo/blending-futuristic-building-seamlessly-into-desert-landscape_23-2151248317.jpg", alt: "Blending futuristic building seamlessly into desert landscape"},
{
src: "http://img.b2bpic.net/free-photo/full-shot-man-sitting-roof_23-2149343640.jpg", alt: "Full shot man sitting on roof"},
{ src: "http://img.b2bpic.net/free-photo/modern-country-houses-construction_1385-20.jpg", alt: "Modern country houses under construction" },
{ src: "http://img.b2bpic.net/free-photo/aerial-shot-town-with-high-buildings-tennis-court_181624-46523.jpg", alt: "Aerial shot of a town with high buildings and a tennis court" },
{ src: "http://img.b2bpic.net/free-photo/abandoned-hut-stands-amidst-spooky-winter-landscape-generated-by-ai_188544-11816.jpg", alt: "Abandoned hut stands amidst spooky winter landscape generated by AI" },
{ src: "http://img.b2bpic.net/free-photo/blending-futuristic-building-seamlessly-into-desert-landscape_23-2151248317.jpg", alt: "Blending futuristic building seamlessly into desert landscape" },
{ src: "http://img.b2bpic.net/free-photo/full-shot-man-sitting-roof_23-2149343640.jpg", alt: "Full shot man sitting on roof" },
]}
avatarText="Trusted by 500+ Local Homeowners"
marqueeItems={[
{
type: "text", text: "Licensed & Insured"},
{
type: "text", text: "24/7 Emergency Service"},
{
type: "text", text: "Premium Materials"},
{
type: "text", text: "Warranty Backed"},
{
type: "text", text: "San Jose Local"},
{ type: "text", text: "Licensed & Insured" },
{ type: "text", text: "24/7 Emergency Service" },
{ type: "text", text: "Premium Materials" },
{ type: "text", text: "Warranty Backed" },
{ type: "text", text: "San Jose Local" },
]}
/>
</div>
@@ -94,14 +78,10 @@ export default function LandingPage() {
textboxLayout="default"
useInvertedBackground={false}
features={[
{
tag: "Emergency", title: "Roof Leak Repair", subtitle: "Fast Action", description: "Quick detection and permanent fixes for complex leaks.", imageSrc: "http://img.b2bpic.net/free-photo/closeup-roof-house-made-wooden-tiles_169016-24989.jpg"},
{
tag: "Quality", title: "Roof Replacement", subtitle: "Lasting Protection", description: "High-quality materials with precision installation.", imageSrc: "http://img.b2bpic.net/free-photo/long-shot-men-working-roof_23-2149343678.jpg"},
{
tag: "Protection", title: "Storm Damage", subtitle: "Rapid Response", description: "Expert navigation through stressful insurance processes.", imageSrc: "http://img.b2bpic.net/free-photo/back-view-male-musician-climbing-roof-with-electric-guitar_23-2148680354.jpg"},
{
tag: "Foundation", title: "Gutter & Drainage", subtitle: "Full Protection", description: "Protect your home from water damage long term.", imageSrc: "http://img.b2bpic.net/free-photo/man-with-helmet-working-roof-full-shot_23-2149343662.jpg"},
{ tag: "Emergency", title: "Roof Leak Repair", subtitle: "Fast Action", description: "Quick detection and permanent fixes for complex leaks.", imageSrc: "http://img.b2bpic.net/free-photo/closeup-roof-house-made-wooden-tiles_169016-24989.jpg" },
{ tag: "Quality", title: "Roof Replacement", subtitle: "Lasting Protection", description: "High-quality materials with precision installation.", imageSrc: "http://img.b2bpic.net/free-photo/long-shot-men-working-roof_23-2149343678.jpg" },
{ tag: "Protection", title: "Storm Damage", subtitle: "Rapid Response", description: "Expert navigation through stressful insurance processes.", imageSrc: "http://img.b2bpic.net/free-photo/back-view-male-musician-climbing-roof-with-electric-guitar_23-2148680354.jpg" },
{ tag: "Foundation", title: "Gutter & Drainage", subtitle: "Full Protection", description: "Protect your home from water damage long term.", imageSrc: "http://img.b2bpic.net/free-photo/man-with-helmet-working-roof-full-shot_23-2149343662.jpg" },
]}
title="Complete Roofing Solutions"
description="Professional services designed for durability and peace of mind."
@@ -115,21 +95,11 @@ export default function LandingPage() {
animationType="slide-up"
useInvertedBackground={true}
testimonials={[
{
id: "1", name: "Sarah Johnson", role: "Homeowner", company: "Willow Glen", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/real-estate-concept-cheerful-man-showing-paper-house-model-making-fist-pump-paid-mortgage-yellow_1258-165769.jpg"},
{
id: "2", name: "Michael Chen", role: "Homeowner", company: "Almaden", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/happy-family-talking-while-moving-into-their-first-home_637285-12314.jpg"},
{
id: "3", name: "Emily Rodriguez", role: "Homeowner", company: "Santa Teresa", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/young-businessman-happy-expression_1194-2025.jpg"},
{
id: "4", name: "David Kim", role: "Homeowner", company: "Evergreen", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/cheerful-woman-cooking-man_23-2147766909.jpg"},
{
id: "5", name: "Jessica Lee", role: "Homeowner", company: "Silver Creek", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/workers-having-little-chat-while-having-cup-coffee_329181-15675.jpg"},
{ id: "1", name: "Sarah Johnson", role: "Homeowner", company: "Willow Glen", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/real-estate-concept-cheerful-man-showing-paper-house-model-making-fist-pump-paid-mortgage-yellow_1258-165769.jpg" },
{ id: "2", name: "Michael Chen", role: "Homeowner", company: "Almaden", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/happy-family-talking-while-moving-into-their-first-home_637285-12314.jpg" },
{ id: "3", name: "Emily Rodriguez", role: "Homeowner", company: "Santa Teresa", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/young-businessman-happy-expression_1194-2025.jpg" },
{ id: "4", name: "David Kim", role: "Homeowner", company: "Evergreen", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/cheerful-woman-cooking-man_23-2147766909.jpg" },
{ id: "5", name: "Jessica Lee", role: "Homeowner", company: "Silver Creek", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/workers-having-little-chat-while-having-cup-coffee_329181-15675.jpg" },
]}
title="Trusted by San Jose Homeowners"
description="See why neighbors trust Apex Roofing with their most valuable assets."
@@ -142,18 +112,15 @@ export default function LandingPage() {
useInvertedBackground={false}
title="Industry Partners & Certifications"
description="Proudly working with top industry manufacturers to bring you the best roof warranties."
names={[
"GAF Certified", "Owens Corning Preferred", "CertainTeed Select", "San Jose Chamber", "Better Business Bureau"]}
names={["GAF Certified", "Owens Corning Preferred", "CertainTeed Select", "San Jose Chamber", "Better Business Bureau"]}
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoReveal
logoText="Apex Roofing © 2024"
leftLink={{
text: "Licensed & Insured", href: "#"}}
rightLink={{
text: "555-555-5555", href: "tel:5555555555"}}
leftLink={{ text: "Licensed & Insured", href: "#" }}
rightLink={{ text: "555-555-5555", href: "tel:5555555555" }}
/>
</div>
</ReactLenis>