Merge version_2_1781772879996 into main
Merge version_2_1781772879996 into main
This commit was merged in pull request #1.
This commit is contained in:
@@ -1,278 +1,36 @@
|
||||
import AboutMediaOverlay from '@/components/sections/about/AboutMediaOverlay';
|
||||
import ContactCta from '@/components/sections/contact/ContactCta';
|
||||
import FaqSimple from '@/components/sections/faq/FaqSimple';
|
||||
import FeaturesDetailedSteps from '@/components/sections/features/FeaturesDetailedSteps';
|
||||
import FeaturesRevealCardsBento from '@/components/sections/features/FeaturesRevealCardsBento';
|
||||
import HeroSplitVerticalMarquee from '@/components/sections/hero/HeroSplitVerticalMarquee';
|
||||
import MetricsMediaCards from '@/components/sections/metrics/MetricsMediaCards';
|
||||
import TestimonialMarqueeCards from '@/components/sections/testimonial/TestimonialMarqueeCards';
|
||||
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 SamplesSection from './HomePage/sections/Samples';
|
||||
import AboutSection from './HomePage/sections/About';
|
||||
import WorkflowSection from './HomePage/sections/Workflow';
|
||||
import MetricsSection from './HomePage/sections/Metrics';
|
||||
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">
|
||||
<HeroSplitVerticalMarquee
|
||||
tag="Design Studio"
|
||||
title="Vibrant Creative Design Solutions"
|
||||
description="Transform your brand with professional flyers, unique business cards, and eye-catching marketing materials that demand attention."
|
||||
primaryButton={{
|
||||
text: "View Samples",
|
||||
href: "#samples",
|
||||
}}
|
||||
secondaryButton={{
|
||||
text: "Contact Us",
|
||||
href: "#contact",
|
||||
}}
|
||||
leftItems={[
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/3d-render-digital-technology-background-with-lcd-design_1048-15284.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/line-shaped-neon-lights-background_23-2147815446.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/abstract-green-background_23-2151820826.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/transparent-green-creativity-modern-art-ink-colors-are-amazingly-bright-luminous-translucent-freeflowing-dry-quickly-natural-pattern-luxury-abstract-artwork-trendy-style_1258-103228.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/3d-render-modern-network-communications-background_1048-15564.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/abstract-texture-digital-yellow-background-generative-ai_169016-30238.jpg",
|
||||
},
|
||||
]}
|
||||
rightItems={[
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/liquid-marbling-paint-texture-background-fluid-painting-abstract-texture-intensive-color-mix-wallpaper_1258-103493.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/artistic-blurry-colorful-wallpaper-background_58702-8402.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/blurred-night-lights_23-2148139130.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/neon-green-bubble-art-black-background-diy-style_53876-129322.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/abstract-binary-code-background_1048-11343.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/3d-render-abstract-modern-tech-design-with-low-poly-connecting-lines-dots_1048-14606.jpg",
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<>
|
||||
<HeroSection />
|
||||
|
||||
<div id="samples" data-section="samples">
|
||||
<SectionErrorBoundary name="samples">
|
||||
<FeaturesRevealCardsBento
|
||||
tag="Portfolio"
|
||||
title="Our Creative Work"
|
||||
description="Explore our recent projects ranging from bold business cards to event-defining flyers."
|
||||
items={[
|
||||
{
|
||||
title: "Flyer Design",
|
||||
description: "High-conversion marketing materials.",
|
||||
href: "#",
|
||||
imageSrc: "http://img.b2bpic.net/free-psd/flat-design-creativity-template_23-2150099517.jpg",
|
||||
},
|
||||
{
|
||||
title: "Business Cards",
|
||||
description: "Premium finish and texture.",
|
||||
href: "#",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/elegant-business-card-template-with-golden-shapes_1361-2686.jpg",
|
||||
},
|
||||
{
|
||||
title: "Social Media",
|
||||
description: "Engaging visual content.",
|
||||
href: "#",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/full-shot-man-painting-indoors_23-2150182592.jpg",
|
||||
},
|
||||
{
|
||||
title: "Brochures",
|
||||
description: "Informative and stylish.",
|
||||
href: "#",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/abstract-geometric-background-with-liquid-shapes-generative-ai_8829-2896.jpg",
|
||||
},
|
||||
{
|
||||
title: "Posters",
|
||||
description: "Large format impact.",
|
||||
href: "#",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/gradient-maximalist-landing-page-template-design_23-2151018239.jpg",
|
||||
},
|
||||
{
|
||||
title: "Stationery",
|
||||
description: "Cohesive brand identity.",
|
||||
href: "#",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/abstract-painted-business-card-template_23-2148249621.jpg",
|
||||
},
|
||||
{
|
||||
title: "UI Design",
|
||||
description: "Modern digital presence.",
|
||||
href: "#",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/blooming-floral-arts-crafts-nature_53876-124882.jpg",
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<SamplesSection />
|
||||
|
||||
<div id="about" data-section="about">
|
||||
<SectionErrorBoundary name="about">
|
||||
<AboutMediaOverlay
|
||||
tag="Expertise"
|
||||
title="We Bring Ideas to Life"
|
||||
description="With years of experience, we specialize in high-impact visual design that helps businesses grow and connect."
|
||||
imageSrc="http://img.b2bpic.net/free-photo/person-conducting-online-psychologist-therapy_23-2149407959.jpg"
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<AboutSection />
|
||||
|
||||
<div id="workflow" data-section="workflow">
|
||||
<SectionErrorBoundary name="workflow">
|
||||
<FeaturesDetailedSteps
|
||||
tag="Process"
|
||||
title="Simple Design Workflow"
|
||||
description="Our three-step process ensures your designs are delivered perfectly every time."
|
||||
steps={[
|
||||
{
|
||||
tag: "01",
|
||||
title: "Consult",
|
||||
subtitle: "Vision",
|
||||
description: "We discuss your brand goals.",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/antique-word-website-template-layout-cursor-graphic_53876-120899.jpg",
|
||||
},
|
||||
{
|
||||
tag: "02",
|
||||
title: "Design",
|
||||
subtitle: "Draft",
|
||||
description: "We craft unique concepts.",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/luxury-business-card-template_23-2148345117.jpg",
|
||||
},
|
||||
{
|
||||
tag: "03",
|
||||
title: "Deliver",
|
||||
subtitle: "Launch",
|
||||
description: "High-res files sent.",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/abstract-business-flyer-with-colorful-style_23-2147921345.jpg",
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<WorkflowSection />
|
||||
|
||||
<div id="metrics" data-section="metrics">
|
||||
<SectionErrorBoundary name="metrics">
|
||||
<MetricsMediaCards
|
||||
tag="Impact"
|
||||
title="Results Driven"
|
||||
description="Our designs achieve real business growth."
|
||||
metrics={[
|
||||
{
|
||||
value: "1000+",
|
||||
title: "Flyers Designed",
|
||||
description: "Happy clients served.",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/black-friday-shopping-promotion_23-2152027188.jpg",
|
||||
},
|
||||
{
|
||||
value: "500+",
|
||||
title: "Cards Printed",
|
||||
description: "Premium finishes delivered.",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/graphic-design-color-swatches-pens-desk-architectural-drawing-with-work-tools-accessories_1421-385.jpg",
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<MetricsSection />
|
||||
|
||||
<div id="testimonials" data-section="testimonials">
|
||||
<SectionErrorBoundary name="testimonials">
|
||||
<TestimonialMarqueeCards
|
||||
tag="Reviews"
|
||||
title="Trusted by Pros"
|
||||
description="See what our clients are saying about our design quality."
|
||||
testimonials={[
|
||||
{
|
||||
name: "John Doe",
|
||||
role: "CEO",
|
||||
quote: "Incredible design work!",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/joyful-woman-black-jacket-liking-lip-posing-isolated-background-charming-lady-dark-suit-smiling-white-backdrop_197531-18516.jpg",
|
||||
},
|
||||
{
|
||||
name: "Jane Smith",
|
||||
role: "Owner",
|
||||
quote: "Stunning business cards.",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/handsome-groom-classy-black-suit-stands-dark-room_8353-7083.jpg",
|
||||
},
|
||||
{
|
||||
name: "Mike Ross",
|
||||
role: "Manager",
|
||||
quote: "Fast and reliable service.",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/joyful-young-pretty-woman-standing-with-closed-posture-laughing-isolated-green-wall-with-copy-space_141793-112396.jpg",
|
||||
},
|
||||
{
|
||||
name: "Alice Lee",
|
||||
role: "Founder",
|
||||
quote: "Vibrant and creative.",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/smiling-successful-businessman-suit-showing-okay-sign-looking-satisfied-standing-against-white-ba_1258-173565.jpg",
|
||||
},
|
||||
{
|
||||
name: "Bob Chen",
|
||||
role: "Lead",
|
||||
quote: "Best designers in town.",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/portrait-woman-business-embrace-confidence-posing-beauty-black-african-american-isolated-gray-background_640221-39.jpg",
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<TestimonialsSection />
|
||||
|
||||
<div id="faq" data-section="faq">
|
||||
<SectionErrorBoundary name="faq">
|
||||
<FaqSimple
|
||||
tag="Support"
|
||||
title="Common Questions"
|
||||
description="Everything you need to know about our services."
|
||||
items={[
|
||||
{
|
||||
question: "What formats are provided?",
|
||||
answer: "All print-ready files.",
|
||||
},
|
||||
{
|
||||
question: "Can you design a logo?",
|
||||
answer: "Yes, we specialize in branding.",
|
||||
},
|
||||
{
|
||||
question: "Turnaround time?",
|
||||
answer: "Usually 3-5 business days.",
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<FaqSection />
|
||||
|
||||
<div id="contact" data-section="contact">
|
||||
<SectionErrorBoundary name="contact">
|
||||
<ContactCta
|
||||
tag="Action"
|
||||
text="Ready to elevate your branding? Let's talk design today."
|
||||
primaryButton={{
|
||||
text: "Contact Now",
|
||||
href: "#",
|
||||
}}
|
||||
secondaryButton={{
|
||||
text: "See Packages",
|
||||
href: "#",
|
||||
}}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<ContactSection />
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
||||
21
src/pages/HomePage/sections/About.tsx
Normal file
21
src/pages/HomePage/sections/About.tsx
Normal file
@@ -0,0 +1,21 @@
|
||||
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||
// file as the canonical source for the "about" section.
|
||||
|
||||
import React from 'react';
|
||||
import AboutMediaOverlay from '@/components/sections/about/AboutMediaOverlay';
|
||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||
|
||||
export default function AboutSection(): React.JSX.Element {
|
||||
return (
|
||||
<div id="about" data-section="about">
|
||||
<SectionErrorBoundary name="about">
|
||||
<AboutMediaOverlay
|
||||
tag="Expertise"
|
||||
title="We Bring Ideas to Life"
|
||||
description="With years of experience, we specialize in high-impact visual design that helps businesses grow and connect."
|
||||
imageSrc="http://img.b2bpic.net/free-photo/person-conducting-online-psychologist-therapy_23-2149407959.jpg"
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
27
src/pages/HomePage/sections/Contact.tsx
Normal file
27
src/pages/HomePage/sections/Contact.tsx
Normal file
@@ -0,0 +1,27 @@
|
||||
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||
// file as the canonical source for the "contact" section.
|
||||
|
||||
import React from 'react';
|
||||
import ContactCta from '@/components/sections/contact/ContactCta';
|
||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||
|
||||
export default function ContactSection(): React.JSX.Element {
|
||||
return (
|
||||
<div id="contact" data-section="contact">
|
||||
<SectionErrorBoundary name="contact">
|
||||
<ContactCta
|
||||
tag="Action"
|
||||
text="Ready to elevate your branding? Let's talk design today."
|
||||
primaryButton={{
|
||||
text: "Contact Now",
|
||||
href: "#",
|
||||
}}
|
||||
secondaryButton={{
|
||||
text: "See Packages",
|
||||
href: "#",
|
||||
}}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
34
src/pages/HomePage/sections/Faq.tsx
Normal file
34
src/pages/HomePage/sections/Faq.tsx
Normal file
@@ -0,0 +1,34 @@
|
||||
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||
// file as the canonical source for the "faq" section.
|
||||
|
||||
import React from 'react';
|
||||
import FaqSimple from '@/components/sections/faq/FaqSimple';
|
||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||
|
||||
export default function FaqSection(): React.JSX.Element {
|
||||
return (
|
||||
<div id="faq" data-section="faq">
|
||||
<SectionErrorBoundary name="faq">
|
||||
<FaqSimple
|
||||
tag="Support"
|
||||
title="Common Questions"
|
||||
description="Everything you need to know about our services."
|
||||
items={[
|
||||
{
|
||||
question: "What formats are provided?",
|
||||
answer: "All print-ready files.",
|
||||
},
|
||||
{
|
||||
question: "Can you design a logo?",
|
||||
answer: "Yes, we specialize in branding.",
|
||||
},
|
||||
{
|
||||
question: "Turnaround time?",
|
||||
answer: "Usually 3-5 business days.",
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
68
src/pages/HomePage/sections/Hero.tsx
Normal file
68
src/pages/HomePage/sections/Hero.tsx
Normal file
@@ -0,0 +1,68 @@
|
||||
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||
// file as the canonical source for the "hero" section.
|
||||
|
||||
import React from 'react';
|
||||
import HeroSplitVerticalMarquee from '@/components/sections/hero/HeroSplitVerticalMarquee';
|
||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||
|
||||
export default function HeroSection(): React.JSX.Element {
|
||||
return (
|
||||
<div id="hero" data-section="hero">
|
||||
<SectionErrorBoundary name="hero">
|
||||
<HeroSplitVerticalMarquee
|
||||
tag="Design Studio"
|
||||
title="Vibrant Creative Design Solutions"
|
||||
description="Transform your brand with professional flyers, unique business cards, and eye-catching marketing materials that demand attention."
|
||||
primaryButton={{
|
||||
text: "View Samples",
|
||||
href: "#samples",
|
||||
}}
|
||||
secondaryButton={{
|
||||
text: "Contact Us",
|
||||
href: "#contact",
|
||||
}}
|
||||
leftItems={[
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/3d-render-digital-technology-background-with-lcd-design_1048-15284.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/line-shaped-neon-lights-background_23-2147815446.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/abstract-green-background_23-2151820826.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/transparent-green-creativity-modern-art-ink-colors-are-amazingly-bright-luminous-translucent-freeflowing-dry-quickly-natural-pattern-luxury-abstract-artwork-trendy-style_1258-103228.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/3d-render-modern-network-communications-background_1048-15564.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/abstract-texture-digital-yellow-background-generative-ai_169016-30238.jpg",
|
||||
},
|
||||
]}
|
||||
rightItems={[
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/liquid-marbling-paint-texture-background-fluid-painting-abstract-texture-intensive-color-mix-wallpaper_1258-103493.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/artistic-blurry-colorful-wallpaper-background_58702-8402.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/blurred-night-lights_23-2148139130.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/neon-green-bubble-art-black-background-diy-style_53876-129322.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/abstract-binary-code-background_1048-11343.jpg",
|
||||
},
|
||||
{
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/3d-render-abstract-modern-tech-design-with-low-poly-connecting-lines-dots_1048-14606.jpg",
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
34
src/pages/HomePage/sections/Metrics.tsx
Normal file
34
src/pages/HomePage/sections/Metrics.tsx
Normal file
@@ -0,0 +1,34 @@
|
||||
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||
// file as the canonical source for the "metrics" section.
|
||||
|
||||
import React from 'react';
|
||||
import MetricsMediaCards from '@/components/sections/metrics/MetricsMediaCards';
|
||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||
|
||||
export default function MetricsSection(): React.JSX.Element {
|
||||
return (
|
||||
<div id="metrics" data-section="metrics">
|
||||
<SectionErrorBoundary name="metrics">
|
||||
<MetricsMediaCards
|
||||
tag="Impact"
|
||||
title="Results Driven"
|
||||
description="Our designs achieve real business growth."
|
||||
metrics={[
|
||||
{
|
||||
value: "1000+",
|
||||
title: "Flyers Designed",
|
||||
description: "Happy clients served.",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/black-friday-shopping-promotion_23-2152027188.jpg",
|
||||
},
|
||||
{
|
||||
value: "500+",
|
||||
title: "Cards Printed",
|
||||
description: "Premium finishes delivered.",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/graphic-design-color-swatches-pens-desk-architectural-drawing-with-work-tools-accessories_1421-385.jpg",
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
21
src/pages/HomePage/sections/Samples.tsx
Normal file
21
src/pages/HomePage/sections/Samples.tsx
Normal file
@@ -0,0 +1,21 @@
|
||||
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||
// file as the canonical source for the "samples" section.
|
||||
|
||||
import React from 'react';
|
||||
import FeaturesRevealCardsBento from '@/components/sections/features/FeaturesRevealCardsBento';
|
||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||
|
||||
export default function SamplesSection(): React.JSX.Element {
|
||||
return (
|
||||
<div id="samples" data-section="samples">
|
||||
<SectionErrorBoundary name="samples">
|
||||
<FeaturesRevealCardsBento
|
||||
tag="Portfolio"
|
||||
title="Our Creative Work"
|
||||
description="Explore our recent projects ranging from bold business cards to event-defining flyers."
|
||||
items={[{"title":"Event Flyer","description":"Vibrant and eye-catching event promotion.","href":"#","imageSrc":"https://images.unsplash.com/photo-1561070791-2526d30994b5?q=80&w=2000&auto=format&fit=crop"},{"title":"Corporate Business Card","href":"#","description":"Sleek, modern, and professional.","imageSrc":"https://images.unsplash.com/photo-1589829085413-56de8ae18c73?q=80&w=2000&auto=format&fit=crop"},{"title":"E-commerce Website","href":"#","description":"High-converting online store design.","imageSrc":"https://images.unsplash.com/photo-1460925895917-afdab827c52f?q=80&w=2000&auto=format&fit=crop"},{"imageSrc":"https://images.unsplash.com/photo-1514525253161-7a46d19cd819?q=80&w=2000&auto=format&fit=crop","description":"Bold colors and striking typography.","href":"#","title":"Club Promo Flyer"},{"title":"Creative Agency Site","description":"Interactive and engaging web experience.","href":"#","imageSrc":"https://images.unsplash.com/photo-1498050108023-c5249f4df085?q=80&w=2000&auto=format&fit=crop"},{"title":"Minimalist Business Card","href":"#","description":"Clean and elegant brand identity.","imageSrc":"https://images.unsplash.com/photo-1611162617474-5b21e879e113?q=80&w=2000&auto=format&fit=crop"},{"title":"Restaurant Menu Flyer","href":"#","description":"Appetizing visuals and clear layout.","imageSrc":"https://images.unsplash.com/photo-1555396273-367ea4eb4db5?q=80&w=2000&auto=format&fit=crop"},{"title":"Portfolio Website","href":"#","description":"Showcasing work with style.","imageSrc":"https://images.unsplash.com/photo-1507238691740-187a5b1d37b8?q=80&w=2000&auto=format&fit=crop"}]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
52
src/pages/HomePage/sections/Testimonials.tsx
Normal file
52
src/pages/HomePage/sections/Testimonials.tsx
Normal file
@@ -0,0 +1,52 @@
|
||||
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||
// file as the canonical source for the "testimonials" section.
|
||||
|
||||
import React from 'react';
|
||||
import TestimonialMarqueeCards from '@/components/sections/testimonial/TestimonialMarqueeCards';
|
||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||
|
||||
export default function TestimonialsSection(): React.JSX.Element {
|
||||
return (
|
||||
<div id="testimonials" data-section="testimonials">
|
||||
<SectionErrorBoundary name="testimonials">
|
||||
<TestimonialMarqueeCards
|
||||
tag="Reviews"
|
||||
title="Trusted by Pros"
|
||||
description="See what our clients are saying about our design quality."
|
||||
testimonials={[
|
||||
{
|
||||
name: "John Doe",
|
||||
role: "CEO",
|
||||
quote: "Incredible design work!",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/joyful-woman-black-jacket-liking-lip-posing-isolated-background-charming-lady-dark-suit-smiling-white-backdrop_197531-18516.jpg",
|
||||
},
|
||||
{
|
||||
name: "Jane Smith",
|
||||
role: "Owner",
|
||||
quote: "Stunning business cards.",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/handsome-groom-classy-black-suit-stands-dark-room_8353-7083.jpg",
|
||||
},
|
||||
{
|
||||
name: "Mike Ross",
|
||||
role: "Manager",
|
||||
quote: "Fast and reliable service.",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/joyful-young-pretty-woman-standing-with-closed-posture-laughing-isolated-green-wall-with-copy-space_141793-112396.jpg",
|
||||
},
|
||||
{
|
||||
name: "Alice Lee",
|
||||
role: "Founder",
|
||||
quote: "Vibrant and creative.",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/smiling-successful-businessman-suit-showing-okay-sign-looking-satisfied-standing-against-white-ba_1258-173565.jpg",
|
||||
},
|
||||
{
|
||||
name: "Bob Chen",
|
||||
role: "Lead",
|
||||
quote: "Best designers in town.",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/portrait-woman-business-embrace-confidence-posing-beauty-black-african-american-isolated-gray-background_640221-39.jpg",
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
43
src/pages/HomePage/sections/Workflow.tsx
Normal file
43
src/pages/HomePage/sections/Workflow.tsx
Normal file
@@ -0,0 +1,43 @@
|
||||
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||
// file as the canonical source for the "workflow" section.
|
||||
|
||||
import React from 'react';
|
||||
import FeaturesDetailedSteps from '@/components/sections/features/FeaturesDetailedSteps';
|
||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||
|
||||
export default function WorkflowSection(): React.JSX.Element {
|
||||
return (
|
||||
<div id="workflow" data-section="workflow">
|
||||
<SectionErrorBoundary name="workflow">
|
||||
<FeaturesDetailedSteps
|
||||
tag="Process"
|
||||
title="Simple Design Workflow"
|
||||
description="Our three-step process ensures your designs are delivered perfectly every time."
|
||||
steps={[
|
||||
{
|
||||
tag: "01",
|
||||
title: "Consult",
|
||||
subtitle: "Vision",
|
||||
description: "We discuss your brand goals.",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/antique-word-website-template-layout-cursor-graphic_53876-120899.jpg",
|
||||
},
|
||||
{
|
||||
tag: "02",
|
||||
title: "Design",
|
||||
subtitle: "Draft",
|
||||
description: "We craft unique concepts.",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/luxury-business-card-template_23-2148345117.jpg",
|
||||
},
|
||||
{
|
||||
tag: "03",
|
||||
title: "Deliver",
|
||||
subtitle: "Launch",
|
||||
description: "High-res files sent.",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/abstract-business-flyer-with-colorful-style_23-2147921345.jpg",
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user