Switch to version 2: modified src/pages/HomePage.tsx

This commit is contained in:
2026-06-15 18:56:41 +00:00
parent d52a6fc39f
commit ca7054fe2d

View File

@@ -1,256 +1,36 @@
import AboutFeaturesSplit from '@/components/sections/about/AboutFeaturesSplit';
import ContactCta from '@/components/sections/contact/ContactCta';
import FaqSplitMedia from '@/components/sections/faq/FaqSplitMedia';
import FeaturesArrowCards from '@/components/sections/features/FeaturesArrowCards';
import FeaturesRevealCardsBento from '@/components/sections/features/FeaturesRevealCardsBento';
import HeroSplit from '@/components/sections/hero/HeroSplit';
import SocialProofMarquee from '@/components/sections/social-proof/SocialProofMarquee';
import TestimonialMarqueeCards from '@/components/sections/testimonial/TestimonialMarqueeCards';
import { Shield, Star, Zap } from "lucide-react";
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
// AUTO-GENERATED shell by per-section-migrate.
// Section bodies live in ./<PageBase>/sections/<X>.tsx. Edit the section
// files directly. Non-block content (wrappers, non-inlinable sections) is
// preserved inline; extracted section blocks become <XSection/> refs.
export default function HomePage() {
import React from 'react';
import HeroSection from './HomePage/sections/Hero';
import SocialProofSection from './HomePage/sections/SocialProof';
import ProductsSection from './HomePage/sections/Products';
import FeaturesSection from './HomePage/sections/Features';
import AboutSection from './HomePage/sections/About';
import TestimonialsSection from './HomePage/sections/Testimonials';
import FaqSection from './HomePage/sections/Faq';
import ContactSection from './HomePage/sections/Contact';
export default function HomePage(): React.JSX.Element {
return (
<>
<div id="hero" data-section="hero">
<SectionErrorBoundary name="hero">
<HeroSplit
tag="Est. 2024"
title="Your Everyday Essentials"
description="Made to feel good, made to last. Elevate your daily routine with our collection of oversized tees, stationery, and laptop sleeves."
primaryButton={{
text: "Shop Now",
href: "#products",
}}
secondaryButton={{
text: "Our Story",
href: "#about",
}}
imageSrc="http://img.b2bpic.net/free-photo/image-cute-woman-luffing-with-phone-city_197531-33752.jpg"
/>
</SectionErrorBoundary>
</div>
<>
<HeroSection />
<div id="social-proof" data-section="social-proof">
<SectionErrorBoundary name="social-proof">
<SocialProofMarquee
tag="Catalog Highlights"
title="Discover Perhaps"
description="Essential goods designed for the modern Egyptian lifestyle."
names={[
"Oversized Tees",
"Notebooks",
"Laptop Sleeves",
"Essential Kits",
"Daily Goods",
"Lifestyle Essentials",
"Everyday Apparel",
]}
/>
</SectionErrorBoundary>
</div>
<SocialProofSection />
<div id="products" data-section="products">
<SectionErrorBoundary name="products">
<FeaturesRevealCardsBento
tag="Featured Products"
title="Curated Collections"
description="Explore our limited edition drops and lifestyle staples."
items={[
{
title: "Oversized Basic Tee",
description: "Heavyweight cotton, Egyptian-made.",
href: "#",
imageSrc: "http://img.b2bpic.net/free-photo/young-woman-dealing-with-anxiety_23-2149521420.jpg",
},
{
title: "Minimal Notebook",
description: "Lined pages for your thoughts.",
href: "#",
imageSrc: "http://img.b2bpic.net/free-photo/minimal-home-desk-workspace-with-clipboard-pen-coffee-mug-pastel-pink-grey-background-flat-lay-top-view_501050-647.jpg",
},
{
title: "Padded Laptop Sleeve",
description: "Protect your gear in style.",
href: "#",
imageSrc: "http://img.b2bpic.net/free-photo/set-various-digital-devices_23-2147864697.jpg",
},
{
title: "Summer Graphic Tee",
description: "Artist-designed comfort.",
href: "#",
imageSrc: "http://img.b2bpic.net/free-photo/woman-beige-suit-with-flowers_23-2151940177.jpg",
},
{
title: "Pocket Sketchbook",
description: "Perfect for creative souls.",
href: "#",
imageSrc: "http://img.b2bpic.net/free-photo/detail-beautiful-young-woman-writting_1301-5221.jpg",
},
{
title: "Durable Gear Case",
description: "Carry everything together.",
href: "#",
imageSrc: "http://img.b2bpic.net/free-photo/man-with-bear-using-tablet-modern-building-chilling-sofa_273443-3121.jpg",
},
{
title: "Limited Drop",
description: "New releases dropping soon.",
href: "#",
imageSrc: "http://img.b2bpic.net/free-photo/assortment-delicious-fresh-vegetable_23-2148913335.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
<ProductsSection />
<div id="features" data-section="features">
<SectionErrorBoundary name="features">
<FeaturesArrowCards
tag="Our Vibe"
title="Feel The Quality"
description="We don't do compromises. Everything we make is curated to last."
items={[
{
title: "Artistic Vision",
tags: [
"Creative",
"Unique",
],
imageSrc: "http://img.b2bpic.net/free-photo/beach-umbrella-made-reed-with-metal-cap-top_1268-15777.jpg",
},
{
title: "Sustainable Comfort",
tags: [
"Soft",
"Durable",
],
imageSrc: "http://img.b2bpic.net/free-photo/lavender-colored-background-with-abstract-texture_23-2151396663.jpg",
},
{
title: "Egyptian Craft",
tags: [
"Local",
"Quality",
],
imageSrc: "http://img.b2bpic.net/free-photo/flat-lay-arrangement-with-jeans-fabric_23-2148876417.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
<FeaturesSection />
<div id="about" data-section="about">
<SectionErrorBoundary name="about">
<AboutFeaturesSplit
tag="Our Ethos"
title="Perhaps is for the creators"
description="We are a Cairo-based brand obsessed with the intersection of art and utility. Est. 2024 to redefine your everyday essentials."
items={[
{
icon: Zap,
title: "Bold Aesthetic",
description: "Playful design that makes you stand out.",
},
{
icon: Shield,
title: "Built to Last",
description: "Quality materials designed for longevity.",
},
{
icon: Star,
title: "Artistic Focus",
description: "Every product is a canvas.",
},
]}
imageSrc="http://img.b2bpic.net/free-photo/full-shot-man-painting-indoors_23-2150182592.jpg"
/>
</SectionErrorBoundary>
</div>
<AboutSection />
<div id="testimonials" data-section="testimonials">
<SectionErrorBoundary name="testimonials">
<TestimonialMarqueeCards
tag="Community Love"
title="Loved by you"
description="Hear what our Perhaps family says about our essentials."
testimonials={[
{
name: "Amira M.",
role: "Creative",
quote: "My favorite oversized tee ever.",
imageSrc: "http://img.b2bpic.net/free-photo/smiling-portrait-young-couple-taking-selfie-mobile-phone_23-2148151750.jpg",
},
{
name: "Omar K.",
role: "Student",
quote: "Notebook quality is top notch.",
imageSrc: "http://img.b2bpic.net/free-photo/portrait-young-woman-bed-working-studying-writing-her-journal-reading-notebook-notes_1258-204266.jpg",
},
{
name: "Sara H.",
role: "Designer",
quote: "The laptop sleeve saved my Mac.",
imageSrc: "http://img.b2bpic.net/free-photo/young-woman-jacket-leaning-wall-cafe_171337-16379.jpg",
},
{
name: "Karim L.",
role: "Artist",
quote: "Unique designs, great fit.",
imageSrc: "http://img.b2bpic.net/free-photo/young-beautiful-hispanic-woman-artist-smiling-confident-holding-paintbrush-palette-art-studio_839833-25796.jpg",
},
{
name: "Laila Y.",
role: "Photographer",
quote: "Perhaps is my new go-to brand.",
imageSrc: "http://img.b2bpic.net/free-photo/lifestyle-sunny-fashion-portrait-young-stylish-woman-walking-street-with-camera-smiling-enjoy-weekends-make-photo-her-travel-old-retro-photocamera-vintage_639032-2502.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
<TestimonialsSection />
<div id="faq" data-section="faq">
<SectionErrorBoundary name="faq">
<FaqSplitMedia
tag="Helpful Info"
title="Common Questions"
description="Everything you need to know about our products and shipping."
items={[
{
question: "How long is delivery?",
answer: "We deliver all over Egypt within two weeks.",
},
{
question: "What is the return policy?",
answer: "You can return products within 14 days if in original condition.",
},
{
question: "Where are you based?",
answer: "Our studio is based in Cairo, Egypt.",
},
]}
imageSrc="http://img.b2bpic.net/free-photo/high-angle-desk-arrangement-with-cup_23-2149073077.jpg"
/>
</SectionErrorBoundary>
</div>
<FaqSection />
<div id="contact" data-section="contact">
<SectionErrorBoundary name="contact">
<ContactCta
tag="Reach Out"
text="Join the Perhaps family. Follow us on Instagram for daily aesthetic updates."
primaryButton={{
text: "@getperhaps",
href: "https://instagram.com/getperhaps",
}}
secondaryButton={{
text: "Contact Support",
href: "mailto:hello@getperhaps.com",
}}
/>
</SectionErrorBoundary>
</div>
<ContactSection />
</>
);
}