2 Commits

Author SHA1 Message Date
702c9d83a6 Merge version_3_1782341292022 into main
Merge version_3_1782341292022 into main
2026-06-24 22:49:28 +00:00
kudinDmitriyUp
d8e52bcd62 Bob AI: Update pricing section with black background and glowing whi 2026-06-24 22:48:49 +00:00
9 changed files with 374 additions and 168 deletions

View File

@@ -1,179 +1,36 @@
import ContactCta from '@/components/sections/contact/ContactCta';
import FaqTabbedAccordion from '@/components/sections/faq/FaqTabbedAccordion';
import FeaturesBento from '@/components/sections/features/FeaturesBento';
import FeaturesImageBento from '@/components/sections/features/FeaturesImageBento';
import HeroSplitVerticalMarquee from '@/components/sections/hero/HeroSplitVerticalMarquee';
import PricingLayeredCards from '@/components/sections/pricing/PricingLayeredCards';
import TeamListCards from '@/components/sections/team/TeamListCards';
import TestimonialColumnMarqueeCards from '@/components/sections/testimonial/TestimonialColumnMarqueeCards';
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 FeaturesSection from './HomePage/sections/Features';
import ServicesSection from './HomePage/sections/Services';
import ProcessSection from './HomePage/sections/Process';
import PortfolioSection from './HomePage/sections/Portfolio';
import PricingSection from './HomePage/sections/Pricing';
import TestimonialsSection from './HomePage/sections/Testimonials';
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="Innovative Agency"
title="הופכים גולשים ללקוחות"
description="אנחנו בונים אתרים, דפי נחיתה ומערכות אוטומציה חכמות שמייצרות יותר פניות, יותר לקוחות ויותר מכירות לעסק שלך."
primaryButton={{
text: "לקבלת שיחת ייעוץ חינם", href: "#contact"}}
secondaryButton={{
text: "צפו בעבודות שלנו", href: "#portfolio"}}
leftItems={[
{ imageSrc: "http://img.b2bpic.net/free-photo/3d-abstract-network-technology-background-with-low-poly-plexus-design_1048-18867.jpg" },
{ imageSrc: "http://img.b2bpic.net/free-photo/top-view-nutritional-counter-app_23-2149880598.jpg" },
{ imageSrc: "http://img.b2bpic.net/free-photo/online-shopping-experience_23-2151952979.jpg" },
]}
rightItems={[
{ imageSrc: "http://img.b2bpic.net/free-vector/luxury-gala-dinner-landing-page-template_23-2150212319.jpg" },
{ imageSrc: "http://img.b2bpic.net/free-photo/conceptualize-conception-conceptual-ideas-plan-concept_53876-124067.jpg" },
{ imageSrc: "http://img.b2bpic.net/free-photo/desktop-pc-wooden-desk-showcases-infographics-client-reach-data_482257-126876.jpg" },
]}
/>
</SectionErrorBoundary>
</div>
<>
<HeroSection />
<div id="features" data-section="features">
<SectionErrorBoundary name="features">
<FeaturesBento
tag="Why LeadForge?"
title="למה לבחור ב-LeadForge?"
description="אנחנו מביאים טכנולוגיה וביצועים לרמה הבאה."
features={[
{
title: "אתר מהיר במיוחד", description: "טעינה מהירה ששומרת על הלקוחות שלך.", bentoComponent: "info-card-marquee", infoCards: [
{ icon: "Zap", label: "Speed", value: "99/100" },
]
},
{
title: "מותאם למובייל", description: "חוויה מושלמת מכל מכשיר.", bentoComponent: "tilted-stack-cards", stackCards: [
{ icon: "Smartphone", title: "Responsive", subtitle: "All devices", detail: "Perfect UX" },
{ icon: "Monitor", title: "Desktop", subtitle: "Full power", detail: "High res" },
{ icon: "Tablet", title: "Tablet", subtitle: "Touch friendly", detail: "Smooth" },
]
},
{
title: "שילוב בינה מלאכותית", description: "אוטומציות מתקדמות לעסק חכם.", bentoComponent: "chat-marquee", aiIcon: "Star", userIcon: "User", exchanges: [
{ userMessage: "Lead?", aiResponse: "Captured!" },
],
placeholder: "Chat"
},
]}
/>
</SectionErrorBoundary>
</div>
<FeaturesSection />
<div id="services" data-section="services">
<SectionErrorBoundary name="services">
<FeaturesImageBento
tag="Our Services"
title="השירותים שלנו"
description="מגוון פתרונות לבניית נוכחות דיגיטלית חזקה."
items={[
{ title: "בניית אתרים", description: "אתרים מקצועיים ואמינים.", imageSrc: "http://img.b2bpic.net/free-photo/financial-application-ui-pc-screen-showing-company-revenue_482257-119232.jpg" },
{ title: "דפי נחיתה", description: "ממוקדי המרה.", imageSrc: "http://img.b2bpic.net/free-photo/woman-searching-fornew-clothes_23-2147688706.jpg" },
{ title: "אוטומציות AI", description: "בינה מלאכותית לעסק.", imageSrc: "http://img.b2bpic.net/free-photo/futuristic-kitchen-interior-design_23-2151821368.jpg" },
{ title: "אוטומציות WhatsApp", description: "מענה אוטומטי חכם.", imageSrc: "http://img.b2bpic.net/free-photo/young-girl-with-business-template_23-2147633573.jpg" },
{ title: "קידום SEO", description: "שיפור הנראות בגוגל.", imageSrc: "http://img.b2bpic.net/free-vector/flat-design-timeline-infographic_23-2148394287.jpg" },
{ title: "תחזוקה שוטפת", description: "עדכונים ואבטחה.", imageSrc: "http://img.b2bpic.net/free-photo/green-screen-computer-display-modern-startup-office-displaying-code-snippets-various_482257-136168.jpg" },
{ title: "אסטרטגיה", description: "תכנון מוצלח.", imageSrc: "http://img.b2bpic.net/free-photo/closeup-black-computer-keyboard-del-button_53876-64694.jpg" },
]}
/>
</SectionErrorBoundary>
</div>
<ServicesSection />
<div id="process" data-section="process">
<SectionErrorBoundary name="process">
<FaqTabbedAccordion
tag="Workflow"
title="איך זה עובד?"
description="התהליך שלנו פשוט, מהיר וממוקד תוצאות."
categories={[
{
name: "תהליך עבודה", items: [
{ question: "שיחת אפיון", answer: "נכיר את העסק ואת היעדים." },
{ question: "אסטרטגיה", answer: "נתכנן אתר שמייצר תוצאות." },
{ question: "עיצוב ופיתוח", answer: "נבנה אתר מהיר ומרשים." },
{ question: "השקה", answer: "האתר עולה ומתחיל לייצר פניות." },
],
},
]}
/>
</SectionErrorBoundary>
</div>
<ProcessSection />
<div id="portfolio" data-section="portfolio">
<SectionErrorBoundary name="portfolio">
<TeamListCards
tag="Portfolio"
title="פרויקטים נבחרים"
description="עבודות נבחרות עם דגש על עיצוב וחווית משתמש."
groups={[
{
title: "Our Work", members: [
{ name: "Project 1", role: "Web Design", detail: "Professional Website", imageSrc: "http://img.b2bpic.net/free-photo/man-developing-photos-top-view_23-2149893798.jpg" },
{ name: "Project 2", role: "Landing Page", detail: "Conversion Focused", imageSrc: "http://img.b2bpic.net/free-photo/ramadan-tablet-laptop-with-phone-perspective-side_187299-37916.jpg" },
{ name: "Project 3", role: "AI Tool", detail: "Smart Automation", imageSrc: "http://img.b2bpic.net/free-psd/dynamic-autumn-sale-landing-page_23-2149522817.jpg" },
],
},
]}
/>
</SectionErrorBoundary>
</div>
<PortfolioSection />
<div id="pricing" data-section="pricing">
<SectionErrorBoundary name="pricing">
<PricingLayeredCards
tag="Pricing"
title="חבילות בניית אתרים"
description="בחר את החבילה המתאימה לעסק שלך."
plans={[
{
tag: "Starter", price: "₪990", description: "חבילת בסיס", primaryButton: { text: "אני רוצה להתחיל", href: "#contact" },
features: ["דף נחיתה מקצועי", "מותאם למובייל", "טופס לידים"],
},
{
tag: "Pro", price: "₪1990", description: "חבילת PRO", primaryButton: { text: "אני רוצה להתחיל", href: "#contact" },
features: ["אתר עד 5 עמודים", "גוגל אנליטיקס", "SEO בסיסי"],
},
{
tag: "VIP", price: "₪3990", description: "חבילת VIP", primaryButton: { text: "אני רוצה להתחיל", href: "#contact" },
features: ["עיצוב אישי", "אוטומציות AI", "חיבור CRM"],
},
]}
/>
</SectionErrorBoundary>
</div>
<PricingSection />
<div id="testimonials" data-section="testimonials">
<SectionErrorBoundary name="testimonials">
<TestimonialColumnMarqueeCards
tag="Reviews"
title="לקוחות ממליצים"
description="אנשים אמיתיים, תוצאות אמיתיות."
testimonials={[
{ name: "ישראל ישראלי", role: "בעל עסק", quote: "אתר מהיר ומדהים!", imageSrc: "http://img.b2bpic.net/free-photo/smiley-tattoo-artist-indoors-side-view_23-2149445974.jpg" },
{ name: "דנה כהן", role: "יזמית", quote: "עלייה מטורפת בלידים.", imageSrc: "http://img.b2bpic.net/free-photo/cheerful-young-businesswoman-smiling-camera_74855-4022.jpg" },
{ name: "יוסי לוי", role: "מנכ\"ל", quote: "שירות ברמה גבוהה מאוד.", imageSrc: "http://img.b2bpic.net/free-photo/happy-young-asian-businessman-businesswoman-meeting-brainstorming-some-new-ideas-about-project_7861-2781.jpg" },
{ name: "מיכל רוזן", role: "שיווק", quote: "אוטומציות חכמות שחסכו זמן.", imageSrc: "http://img.b2bpic.net/free-photo/portrait-optimistic-businessman-formalwear_1262-3600.jpg" },
{ name: "איתי גולן", role: "יזם", quote: "מומלץ בחום לכל עסק.", imageSrc: "http://img.b2bpic.net/free-photo/businessman-solving-startup-problems-with-laptop-archived-documents-looking-annual-statistics-report-find-issue-young-analyst-reviewing-papers-executive-strategy-plan_482257-65811.jpg" },
]}
/>
</SectionErrorBoundary>
</div>
<TestimonialsSection />
<div id="contact" data-section="contact">
<SectionErrorBoundary name="contact">
<ContactCta
tag="Contact"
text="מוכנים להכניס יותר לקוחות לעסק? השאירו פרטים עוד היום."
primaryButton={{ text: "לקבלת שיחת ייעוץ חינם", href: "#contact" }}
secondaryButton={{ text: "צפו בעבודות", href: "#portfolio" }}
/>
</SectionErrorBoundary>
</div>
<ContactSection />
</>
);
}
}

View File

@@ -0,0 +1,21 @@
// 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="Contact"
text="מוכנים להכניס יותר לקוחות לעסק? השאירו פרטים עוד היום."
primaryButton={{ text: "לקבלת שיחת ייעוץ חינם", href: "#contact" }}
secondaryButton={{ text: "צפו בעבודות", href: "#portfolio" }}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,40 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "features" section.
import React from 'react';
import FeaturesBento from '@/components/sections/features/FeaturesBento';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function FeaturesSection(): React.JSX.Element {
return (
<div id="features" data-section="features">
<SectionErrorBoundary name="features">
<FeaturesBento
tag="Why LeadForge?"
title="למה לבחור ב-LeadForge?"
description="אנחנו מביאים טכנולוגיה וביצועים לרמה הבאה."
features={[
{
title: "אתר מהיר במיוחד", description: "טעינה מהירה ששומרת על הלקוחות שלך.", bentoComponent: "info-card-marquee", infoCards: [
{ icon: "Zap", label: "Speed", value: "99/100" },
]
},
{
title: "מותאם למובייל", description: "חוויה מושלמת מכל מכשיר.", bentoComponent: "tilted-stack-cards", stackCards: [
{ icon: "Smartphone", title: "Responsive", subtitle: "All devices", detail: "Perfect UX" },
{ icon: "Monitor", title: "Desktop", subtitle: "Full power", detail: "High res" },
{ icon: "Tablet", title: "Tablet", subtitle: "Touch friendly", detail: "Smooth" },
]
},
{
title: "שילוב בינה מלאכותית", description: "אוטומציות מתקדמות לעסק חכם.", bentoComponent: "chat-marquee", aiIcon: "Star", userIcon: "User", exchanges: [
{ userMessage: "Lead?", aiResponse: "Captured!" },
],
placeholder: "Chat"
},
]}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,34 @@
// 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="Innovative Agency"
title="הופכים גולשים ללקוחות"
description="אנחנו בונים אתרים, דפי נחיתה ומערכות אוטומציה חכמות שמייצרות יותר פניות, יותר לקוחות ויותר מכירות לעסק שלך."
primaryButton={{
text: "לקבלת שיחת ייעוץ חינם", href: "#contact"}}
secondaryButton={{
text: "צפו בעבודות שלנו", href: "#portfolio"}}
leftItems={[
{ imageSrc: "http://img.b2bpic.net/free-photo/3d-abstract-network-technology-background-with-low-poly-plexus-design_1048-18867.jpg" },
{ imageSrc: "http://img.b2bpic.net/free-photo/top-view-nutritional-counter-app_23-2149880598.jpg" },
{ imageSrc: "http://img.b2bpic.net/free-photo/online-shopping-experience_23-2151952979.jpg" },
]}
rightItems={[
{ imageSrc: "http://img.b2bpic.net/free-vector/luxury-gala-dinner-landing-page-template_23-2150212319.jpg" },
{ imageSrc: "http://img.b2bpic.net/free-photo/conceptualize-conception-conceptual-ideas-plan-concept_53876-124067.jpg" },
{ imageSrc: "http://img.b2bpic.net/free-photo/desktop-pc-wooden-desk-showcases-infographics-client-reach-data_482257-126876.jpg" },
]}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,29 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "portfolio" section.
import React from 'react';
import TeamListCards from '@/components/sections/team/TeamListCards';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function PortfolioSection(): React.JSX.Element {
return (
<div id="portfolio" data-section="portfolio">
<SectionErrorBoundary name="portfolio">
<TeamListCards
tag="Portfolio"
title="פרויקטים נבחרים"
description="עבודות נבחרות עם דגש על עיצוב וחווית משתמש."
groups={[
{
title: "Our Work", members: [
{ name: "Project 1", role: "Web Design", detail: "Professional Website", imageSrc: "http://img.b2bpic.net/free-photo/man-developing-photos-top-view_23-2149893798.jpg" },
{ name: "Project 2", role: "Landing Page", detail: "Conversion Focused", imageSrc: "http://img.b2bpic.net/free-photo/ramadan-tablet-laptop-with-phone-perspective-side_187299-37916.jpg" },
{ name: "Project 3", role: "AI Tool", detail: "Smart Automation", imageSrc: "http://img.b2bpic.net/free-psd/dynamic-autumn-sale-landing-page_23-2149522817.jpg" },
],
},
]}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,139 @@
/* eslint-disable */
// @ts-nocheck — generated by catalog-eject; runtime-correct but TS strict-mode false-positives on inlined catalog body
import { Check } from "lucide-react";
import Button from "@/components/ui/Button";
import TextAnimation from "@/components/ui/TextAnimation";
import GridOrCarousel from "@/components/ui/GridOrCarousel";
import ScrollReveal from "@/components/ui/ScrollReveal";
const plans = [
{
tag: "Starter",
price: "₪990",
description: "חבילת בסיס",
primaryButton: {
text: "אני רוצה להתחיל",
href: "#contact"
},
features: [
"דף נחיתה מקצועי",
"מותאם למובייל",
"טופס לידים"
]
},
{
tag: "Pro",
price: "₪1990",
description: "חבילת PRO",
primaryButton: {
text: "אני רוצה להתחיל",
href: "#contact"
},
features: [
"אתר עד 5 עמודים",
"גוגל אנליטיקס",
"SEO בסיסי"
]
},
{
tag: "VIP",
price: "₪3990",
description: "חבילת VIP",
primaryButton: {
text: "אני רוצה להתחיל",
href: "#contact"
},
features: [
"עיצוב אישי",
"אוטומציות AI",
"חיבור CRM"
]
}
];
type PricingPlan = {
tag: string;
price: string;
description: string;
primaryButton: { text: string; href: string };
secondaryButton?: { text: string; href: string };
features: string[];
};
const PricingInline = () => (
<section aria-label="Pricing section" className="py-20 bg-black">
<div className="flex flex-col gap-8 md:gap-10">
<div className="flex flex-col items-center gap-2 w-content-width mx-auto">
<div className="px-3 py-1 mb-1 text-sm card rounded w-fit">
<p>{"Pricing"}</p>
</div>
<TextAnimation
text={"חבילות בניית אתרים"}
variant="slide-up"
gradientText={false}
tag="h2"
className="md:max-w-8/10 text-6xl 2xl:text-7xl leading-[1.15] font-bold text-white drop-shadow-[0_0_15px_rgba(255,255,255,0.8)] text-center text-balance"
/>
<TextAnimation
text={"בחר את החבילה המתאימה לעסק שלך."}
variant="slide-up"
gradientText={false}
tag="p"
className="md:max-w-7/10 text-lg md:text-xl leading-snug text-center text-balance"
/>
{(undefined || undefined) && (
<div className="flex flex-wrap justify-center gap-3 mt-2 md:mt-3">
{undefined && <Button text={undefined.text} href={undefined.href} variant="primary"/>}
{undefined && <Button text={undefined.text} href={undefined.href} variant="secondary"animationDelay={0.1} />}
</div>
)}
</div>
<ScrollReveal variant="slide-up">
<GridOrCarousel>
{plans.map((plan) => (
<div key={plan.tag} className="flex flex-col gap-3 xl:gap-3.5 2xl:gap-4 p-3 xl:p-3.5 2xl:p-4 h-full card rounded">
<div className="flex flex-col gap-3 xl:gap-3.5 2xl:gap-4 p-3 xl:p-3.5 2xl:p-4 secondary-button rounded">
<div className="px-3 py-1 w-fit text-sm card rounded">
<p>{plan.tag}</p>
</div>
<div className="flex flex-col gap-1">
<span className="text-5xl md:text-6xl font-semibold">{plan.price}</span>
<span className="text-base font-medium">{plan.description}</span>
</div>
<div className="flex flex-col gap-3">
<Button text={plan.primaryButton.text} href={plan.primaryButton.href} variant="primary" className="w-full" />
{plan.secondaryButton && <Button text={plan.secondaryButton.text} href={plan.secondaryButton.href} variant="secondary" className="w-full" />}
</div>
</div>
<div className="flex flex-col gap-3 p-3 xl:p-3.5 2xl:p-4">
{plan.features.map((feature) => (
<div key={feature} className="flex items-start gap-3">
<div className="flex items-center justify-center shrink-0 size-6 primary-button rounded">
<Check className="size-3 text-primary-cta-text" strokeWidth={2} />
</div>
<span className="text-base leading-snug">{feature}</span>
</div>
))}
</div>
</div>
))}
</GridOrCarousel>
</ScrollReveal>
</div>
</section>
);
export default function PricingSection() {
return (
<div data-webild-section="pricing" id="pricing">
<PricingInline />
</div>
);
}

View File

@@ -0,0 +1,30 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "process" section.
import React from 'react';
import FaqTabbedAccordion from '@/components/sections/faq/FaqTabbedAccordion';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function ProcessSection(): React.JSX.Element {
return (
<div id="process" data-section="process">
<SectionErrorBoundary name="process">
<FaqTabbedAccordion
tag="Workflow"
title="איך זה עובד?"
description="התהליך שלנו פשוט, מהיר וממוקד תוצאות."
categories={[
{
name: "תהליך עבודה", items: [
{ question: "שיחת אפיון", answer: "נכיר את העסק ואת היעדים." },
{ question: "אסטרטגיה", answer: "נתכנן אתר שמייצר תוצאות." },
{ question: "עיצוב ופיתוח", answer: "נבנה אתר מהיר ומרשים." },
{ question: "השקה", answer: "האתר עולה ומתחיל לייצר פניות." },
],
},
]}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,29 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "services" section.
import React from 'react';
import FeaturesImageBento from '@/components/sections/features/FeaturesImageBento';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function ServicesSection(): React.JSX.Element {
return (
<div id="services" data-section="services">
<SectionErrorBoundary name="services">
<FeaturesImageBento
tag="Our Services"
title="השירותים שלנו"
description="מגוון פתרונות לבניית נוכחות דיגיטלית חזקה."
items={[
{ title: "בניית אתרים", description: "אתרים מקצועיים ואמינים.", imageSrc: "http://img.b2bpic.net/free-photo/financial-application-ui-pc-screen-showing-company-revenue_482257-119232.jpg" },
{ title: "דפי נחיתה", description: "ממוקדי המרה.", imageSrc: "http://img.b2bpic.net/free-photo/woman-searching-fornew-clothes_23-2147688706.jpg" },
{ title: "אוטומציות AI", description: "בינה מלאכותית לעסק.", imageSrc: "http://img.b2bpic.net/free-photo/futuristic-kitchen-interior-design_23-2151821368.jpg" },
{ title: "אוטומציות WhatsApp", description: "מענה אוטומטי חכם.", imageSrc: "http://img.b2bpic.net/free-photo/young-girl-with-business-template_23-2147633573.jpg" },
{ title: "קידום SEO", description: "שיפור הנראות בגוגל.", imageSrc: "http://img.b2bpic.net/free-vector/flat-design-timeline-infographic_23-2148394287.jpg" },
{ title: "תחזוקה שוטפת", description: "עדכונים ואבטחה.", imageSrc: "http://img.b2bpic.net/free-photo/green-screen-computer-display-modern-startup-office-displaying-code-snippets-various_482257-136168.jpg" },
{ title: "אסטרטגיה", description: "תכנון מוצלח.", imageSrc: "http://img.b2bpic.net/free-photo/closeup-black-computer-keyboard-del-button_53876-64694.jpg" },
]}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,27 @@
// 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 TestimonialColumnMarqueeCards from '@/components/sections/testimonial/TestimonialColumnMarqueeCards';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function TestimonialsSection(): React.JSX.Element {
return (
<div id="testimonials" data-section="testimonials">
<SectionErrorBoundary name="testimonials">
<TestimonialColumnMarqueeCards
tag="Reviews"
title="לקוחות ממליצים"
description="אנשים אמיתיים, תוצאות אמיתיות."
testimonials={[
{ name: "ישראל ישראלי", role: "בעל עסק", quote: "אתר מהיר ומדהים!", imageSrc: "http://img.b2bpic.net/free-photo/smiley-tattoo-artist-indoors-side-view_23-2149445974.jpg" },
{ name: "דנה כהן", role: "יזמית", quote: "עלייה מטורפת בלידים.", imageSrc: "http://img.b2bpic.net/free-photo/cheerful-young-businesswoman-smiling-camera_74855-4022.jpg" },
{ name: "יוסי לוי", role: "מנכ\"ל", quote: "שירות ברמה גבוהה מאוד.", imageSrc: "http://img.b2bpic.net/free-photo/happy-young-asian-businessman-businesswoman-meeting-brainstorming-some-new-ideas-about-project_7861-2781.jpg" },
{ name: "מיכל רוזן", role: "שיווק", quote: "אוטומציות חכמות שחסכו זמן.", imageSrc: "http://img.b2bpic.net/free-photo/portrait-optimistic-businessman-formalwear_1262-3600.jpg" },
{ name: "איתי גולן", role: "יזם", quote: "מומלץ בחום לכל עסק.", imageSrc: "http://img.b2bpic.net/free-photo/businessman-solving-startup-problems-with-laptop-archived-documents-looking-annual-statistics-report-find-issue-young-analyst-reviewing-papers-executive-strategy-plan_482257-65811.jpg" },
]}
/>
</SectionErrorBoundary>
</div>
);
}