6 Commits

Author SHA1 Message Date
ba8d0be634 Merge version_5_1782141926545 into main
Merge version_5_1782141926545 into main
2026-06-22 15:27:24 +00:00
kudinDmitriyUp
461ae9bef6 Bob AI: Update footer brand name and add new photos to products 2026-06-22 15:26:45 +00:00
bf3fc81c0d Merge version_4_1782141699832 into main
Merge version_4_1782141699832 into main
2026-06-22 15:23:57 +00:00
kudinDmitriyUp
b1f7d82b34 Bob AI: Updated product images and added Khalda branch to contact se 2026-06-22 15:23:11 +00:00
93f25a5b0c Merge version_3_1782135527761 into main
Merge version_3_1782135527761 into main
2026-06-22 13:47:14 +00:00
d2ad92b3b7 Merge version_3_1782135527761 into main
Merge version_3_1782135527761 into main
2026-06-22 13:41:29 +00:00
9 changed files with 306 additions and 219 deletions

View File

@@ -54,7 +54,7 @@ export default function Layout() {
</main>
<SectionErrorBoundary name="footer">
<FooterSimpleMedia
brand="Abusara Jewelry - Swefieh"
brand="Abusara Jewelry Swefieh and Khalda"
columns={[
{
title: "Contact",

View File

@@ -1,229 +1,33 @@
import AboutMediaOverlay from '@/components/sections/about/AboutMediaOverlay';
import ContactCta from '@/components/sections/contact/ContactCta';
import FaqSplitMedia from '@/components/sections/faq/FaqSplitMedia';
import FeaturesRevealCardsBento from '@/components/sections/features/FeaturesRevealCardsBento';
import HeroBillboardBrand from '@/components/sections/hero/HeroBillboardBrand';
import MetricsFeatureCards from '@/components/sections/metrics/MetricsFeatureCards';
import TestimonialRatingCards from '@/components/sections/testimonial/TestimonialRatingCards';
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 AboutSection from './HomePage/sections/About';
import ProductsSection from './HomePage/sections/Products';
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">
<HeroBillboardBrand
brand="Abusara Jewelry"
description="Exquisite gold and diamond collections crafted with passion in the heart of Swefieh, Amman."
primaryButton={{
text: "Call Now",
href: "tel:+962799070487",
}}
secondaryButton={{
text: "Visit Us",
href: "https://maps.app.goo.gl/XV48+M5",
}}
imageSrc="https://storage.googleapis.com/webild/users/user_3FUbuhBWo8zY2VefkIjcEiJMeRr/uploaded-1782135384906-mmw66f06.jpg"
/>
</SectionErrorBoundary>
</div>
<>
<HeroSection />
<div id="about" data-section="about">
<SectionErrorBoundary name="about">
<AboutMediaOverlay
tag="Our Story"
title="A Legacy of Craftsmanship"
description="Owned and operated by the Abu Sara family, we bring decades of expertise to every piece. Known as one of Amman's most trusted destinations for unique gold and contemporary jewelry designs."
imageSrc="https://storage.googleapis.com/webild/users/user_3FUbuhBWo8zY2VefkIjcEiJMeRr/uploaded-1782135525561-g8cgld3l.jpg"
/>
</SectionErrorBoundary>
</div>
<AboutSection />
<div id="products" data-section="products">
<SectionErrorBoundary name="products">
<FeaturesRevealCardsBento
tag="Our Collection"
title="Timeless Elegance"
description="Discover our signature pieces ranging from classic gold sets to modern, contemporary designs."
items={[
{
title: "Engagement Rings",
description: "Custom crafted diamonds.",
href: "#contact",
imageSrc: "http://img.b2bpic.net/free-photo/view-luxurious-golden-ring-with-marble_23-2150329645.jpg",
},
{
title: "Gold Necklaces",
description: "Intricate gold art pieces.",
href: "#contact",
imageSrc: "http://img.b2bpic.net/free-photo/expensive-golden-ring-with-white-powder-background_23-2150347035.jpg",
},
{
title: "Premium Bracelets",
description: "Handcrafted gold design.",
href: "#contact",
imageSrc: "http://img.b2bpic.net/free-photo/top-view-gold-chains-still-life_23-2149560666.jpg",
},
{
title: "Signature Earrings",
description: "Unique daily wear sets.",
href: "#contact",
imageSrc: "http://img.b2bpic.net/free-photo/golden-easter-eggs-by-easter-decorations_1303-30816.jpg",
},
{
title: "Bridal Sets",
description: "Full ensemble jewelry.",
href: "#contact",
imageSrc: "http://img.b2bpic.net/free-photo/hands-bride-belt-with-diamonds_627829-11933.jpg",
},
{
title: "Wedding Bands",
description: "Timeless golden classics.",
href: "#contact",
imageSrc: "http://img.b2bpic.net/free-photo/top-view-luxury-wedding-stationery_23-2148651984.jpg",
},
{
title: "Custom Design",
description: "Tailor-made masterpieces.",
href: "#contact",
imageSrc: "http://img.b2bpic.net/free-photo/christmas-tree-decoration-close-up-ball-bauble-pine-branches-background_169016-49138.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
<ProductsSection />
<div id="metrics" data-section="metrics">
<SectionErrorBoundary name="metrics">
<MetricsFeatureCards
tag="Why Choose Us"
title="Excellence in Every Detail"
description="Building trust through quality and dedicated service."
metrics={[
{
value: "4.9",
title: "Google Rating",
features: [
"141+ Reviews",
"Trusted by families",
"Highest service standards",
],
},
{
value: "40+",
title: "Years Experience",
features: [
"Family owned",
"Artisanal quality",
"Amman legacy",
],
},
{
value: "100%",
title: "Genuine Quality",
features: [
"Certified gold",
"Authentic diamonds",
"Lifetime craftsmanship",
],
},
]}
/>
</SectionErrorBoundary>
</div>
<MetricsSection />
<div id="testimonials" data-section="testimonials">
<SectionErrorBoundary name="testimonials">
<TestimonialRatingCards
tag="Testimonials"
title="What Our Clients Say"
description="Honest feedback from our valued family of customers."
testimonials={[
{
name: "Sandra Khalil",
role: "Customer",
quote: "Highly Recommended! Fantastic experience and service.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/grateful-charming-blond-european-25s-woman-silver-party-dress-press-palms-heart-feel-thankful-appreciate-effort-cherish-romantic-gesture-receive-flattering-compliments-gifts-smiling-happily_1258-308442.jpg",
},
{
name: "Yahya Aldeeb",
role: "Local Guide",
quote: "Very unique collection. Omar is really a kind person.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/woman-paying-with-credit-card-shopping_329181-18778.jpg",
},
{
name: "Tala Kayed",
role: "Client",
quote: "My favourite gold shop in Amman, wonderful family.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/couple-jewelry-shop-choosing-necklace-together_1303-30656.jpg",
},
{
name: "Amal Hassan",
role: "Client",
quote: "Classy treatment and beautiful variety of models.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/female-sales-person-jewelry-store_1303-30652.jpg",
},
{
name: "Samir Mahmoud",
role: "Client",
quote: "Truly modern pieces and exceptional customer care.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/look-my-ring-is-very-similar_329181-8041.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
<TestimonialsSection />
<div id="faq" data-section="faq">
<SectionErrorBoundary name="faq">
<FaqSplitMedia
tag="Support"
title="Frequently Asked Questions"
description="Have questions about our jewelry or services? We're here to help."
items={[
{
question: "Where are you located?",
answer: "We are located at Al-Qimma St., Swefieh branch, Amman.",
},
{
question: "What are your opening hours?",
answer: "We are open daily until 9 PM.",
},
{
question: "Can I order custom designs?",
answer: "Yes, we specialize in bespoke jewelry designs tailored to your needs.",
},
{
question: "How can I contact you?",
answer: "You can reach us by phone at 07 9907 0487.",
},
]}
imageSrc="http://img.b2bpic.net/free-photo/front-view-various-precious-stones_23-2148643245.jpg"
/>
</SectionErrorBoundary>
</div>
<FaqSection />
<div id="contact" data-section="contact">
<SectionErrorBoundary name="contact">
<ContactCta
tag="Contact Us"
text="Visit us at our Swefieh branch today or reach out for inquiries."
primaryButton={{
text: "Call Now: 07 9907 0487",
href: "tel:+962799070487",
}}
secondaryButton={{
text: "Visit on Instagram",
href: "https://instagram.com",
}}
/>
</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 "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="Our Story"
title="A Legacy of Craftsmanship"
description="Owned and operated by the Abu Sara family, we bring decades of expertise to every piece. Known as one of Amman's most trusted destinations for unique gold and contemporary jewelry designs."
imageSrc="https://storage.googleapis.com/webild/users/user_3FUbuhBWo8zY2VefkIjcEiJMeRr/uploaded-1782135525561-g8cgld3l.jpg"
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,68 @@
/* eslint-disable */
// @ts-nocheck — generated by catalog-eject; runtime-correct but TS strict-mode false-positives on inlined catalog body
import ScrollReveal from "@/components/ui/ScrollReveal";
import TextAnimation from "@/components/ui/TextAnimation";
import Button from "@/components/ui/Button";
const primaryButton = {
text: "Call Now: 07 9907 0487",
href: "tel:+962799070487"
};
const secondaryButton = {
text: "Visit on Instagram",
href: "https://instagram.com"
};
const ContactInline = () => {
return (
<section aria-label="Contact section" className="py-20">
<div className="w-content-width mx-auto">
<ScrollReveal variant="fade-blur">
<div className="flex flex-col items-center gap-8 md:gap-10 py-20 px-8 rounded card">
<div className="flex flex-col items-center gap-2">
<div className="px-3 py-1 mb-1 text-sm card rounded w-fit">
<p>{"Contact Us"}</p>
</div>
<TextAnimation
text={"Visit us at our Swefieh or Khalda branches today or reach out for inquiries."}
variant="slide-up"
gradientText={true}
tag="h2"
className="md:max-w-8/10 text-5xl 2xl:text-6xl leading-[1.15] font-semibold text-center text-balance"
/>
<div className="grid grid-cols-1 md:grid-cols-2 gap-8 mt-8 w-full max-w-4xl">
<div className="flex flex-col items-center p-6 card rounded border border-border/50">
<h3 className="text-2xl font-semibold text-foreground mb-4">Swefieh Branch</h3>
<p className="text-accent text-center mb-6">Swefieh, Amman, Jordan</p>
<div className="flex flex-wrap justify-center gap-3">
<Button text="Call: 07 9907 0487" href="tel:+962799070487" variant="primary" />
<Button text="Instagram" href="https://instagram.com" variant="secondary" animationDelay={0.1} />
</div>
</div>
<div className="flex flex-col items-center p-6 card rounded border border-border/50">
<h3 className="text-2xl font-semibold text-foreground mb-4">Khalda Branch</h3>
<p className="text-accent text-center mb-6">Khalda, Amman, Jordan</p>
<div className="flex flex-wrap justify-center gap-3">
<Button text="Call: 07 9907 0487" href="tel:+962799070487" variant="primary" />
<Button text="Instagram" href="https://instagram.com" variant="secondary" animationDelay={0.1} />
</div>
</div>
</div>
</div>
</div>
</ScrollReveal>
</div>
</section>
);
};
export default function ContactSection() {
return (
<div data-webild-section="contact" id="contact">
<ContactInline />
</div>
);
}

View File

@@ -0,0 +1,39 @@
// 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 FaqSplitMedia from '@/components/sections/faq/FaqSplitMedia';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function FaqSection(): React.JSX.Element {
return (
<div id="faq" data-section="faq">
<SectionErrorBoundary name="faq">
<FaqSplitMedia
tag="Support"
title="Frequently Asked Questions"
description="Have questions about our jewelry or services? We're here to help."
items={[
{
question: "Where are you located?",
answer: "We are located at Al-Qimma St., Swefieh branch, Amman.",
},
{
question: "What are your opening hours?",
answer: "We are open daily until 9 PM.",
},
{
question: "Can I order custom designs?",
answer: "Yes, we specialize in bespoke jewelry designs tailored to your needs.",
},
{
question: "How can I contact you?",
answer: "You can reach us by phone at 07 9907 0487.",
},
]}
imageSrc="http://img.b2bpic.net/free-photo/front-view-various-precious-stones_23-2148643245.jpg"
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,28 @@
// 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 HeroBillboardBrand from '@/components/sections/hero/HeroBillboardBrand';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function HeroSection(): React.JSX.Element {
return (
<div id="hero" data-section="hero">
<SectionErrorBoundary name="hero">
<HeroBillboardBrand
brand="Abusara Jewelry"
description="Exquisite gold and diamond collections crafted with passion in the heart of Swefieh, Amman."
primaryButton={{
text: "Call Now",
href: "tel:+962799070487",
}}
secondaryButton={{
text: "Visit Us",
href: "https://maps.app.goo.gl/XV48+M5",
}}
imageSrc="https://storage.googleapis.com/webild/users/user_3FUbuhBWo8zY2VefkIjcEiJMeRr/uploaded-1782135384906-mmw66f06.jpg"
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,49 @@
// 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 MetricsFeatureCards from '@/components/sections/metrics/MetricsFeatureCards';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function MetricsSection(): React.JSX.Element {
return (
<div id="metrics" data-section="metrics">
<SectionErrorBoundary name="metrics">
<MetricsFeatureCards
tag="Why Choose Us"
title="Excellence in Every Detail"
description="Building trust through quality and dedicated service."
metrics={[
{
value: "4.9",
title: "Google Rating",
features: [
"141+ Reviews",
"Trusted by families",
"Highest service standards",
],
},
{
value: "40+",
title: "Years Experience",
features: [
"Family owned",
"Artisanal quality",
"Amman legacy",
],
},
{
value: "100%",
title: "Genuine Quality",
features: [
"Certified gold",
"Authentic diamonds",
"Lifetime craftsmanship",
],
},
]}
/>
</SectionErrorBoundary>
</div>
);
}

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 "products" section.
import React from 'react';
import FeaturesRevealCardsBento from '@/components/sections/features/FeaturesRevealCardsBento';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function ProductsSection(): React.JSX.Element {
return (
<div id="products" data-section="products">
<SectionErrorBoundary name="products">
<FeaturesRevealCardsBento
tag="Our Collection"
title="Timeless Elegance"
description="Discover our signature pieces ranging from classic gold sets to modern, contemporary designs."
items={[{"href":"#contact","title":"Engagement Rings","imageSrc":"https://storage.googleapis.com/webild/users/user_3FUbuhBWo8zY2VefkIjcEiJMeRr/uploaded-1782135384906-mmw66f06.jpg","description":"Custom crafted diamonds."},{"imageSrc":"https://storage.googleapis.com/webild/users/user_3FUbuhBWo8zY2VefkIjcEiJMeRr/uploaded-1782135384909-qnijmuya.jpg","description":"Intricate gold art pieces.","href":"#contact","title":"Gold Necklaces"},{"href":"#contact","title":"Premium Bracelets","imageSrc":"https://storage.googleapis.com/webild/users/user_3FUbuhBWo8zY2VefkIjcEiJMeRr/uploaded-1782135384911-1vkse4p6.jpg","description":"Handcrafted gold design."},{"description":"Unique daily wear sets.","imageSrc":"https://storage.googleapis.com/webild/users/user_3FUbuhBWo8zY2VefkIjcEiJMeRr/uploaded-1782135384911-06tepbah.jpg","href":"#contact","title":"Signature Earrings"},{"imageSrc":"https://storage.googleapis.com/webild/users/user_3FUbuhBWo8zY2VefkIjcEiJMeRr/uploaded-1782135384912-aeh91huc.jpg","description":"Full ensemble jewelry.","href":"#contact","title":"Bridal Sets"},{"description":"Timeless golden classics.","imageSrc":"https://storage.googleapis.com/webild/users/user_3FUbuhBWo8zY2VefkIjcEiJMeRr/uploaded-1782135525561-g8cgld3l.jpg","href":"#contact","title":"Wedding Bands"},{"description":"Tailor-made masterpieces.","imageSrc":"https://storage.googleapis.com/webild/users/user_3FUbuhBWo8zY2VefkIjcEiJMeRr/uploaded-1782135525562-ym6o0q76.jpg","href":"#contact","title":"Custom Design"}]}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,57 @@
// 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 TestimonialRatingCards from '@/components/sections/testimonial/TestimonialRatingCards';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function TestimonialsSection(): React.JSX.Element {
return (
<div id="testimonials" data-section="testimonials">
<SectionErrorBoundary name="testimonials">
<TestimonialRatingCards
tag="Testimonials"
title="What Our Clients Say"
description="Honest feedback from our valued family of customers."
testimonials={[
{
name: "Sandra Khalil",
role: "Customer",
quote: "Highly Recommended! Fantastic experience and service.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/grateful-charming-blond-european-25s-woman-silver-party-dress-press-palms-heart-feel-thankful-appreciate-effort-cherish-romantic-gesture-receive-flattering-compliments-gifts-smiling-happily_1258-308442.jpg",
},
{
name: "Yahya Aldeeb",
role: "Local Guide",
quote: "Very unique collection. Omar is really a kind person.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/woman-paying-with-credit-card-shopping_329181-18778.jpg",
},
{
name: "Tala Kayed",
role: "Client",
quote: "My favourite gold shop in Amman, wonderful family.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/couple-jewelry-shop-choosing-necklace-together_1303-30656.jpg",
},
{
name: "Amal Hassan",
role: "Client",
quote: "Classy treatment and beautiful variety of models.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/female-sales-person-jewelry-store_1303-30652.jpg",
},
{
name: "Samir Mahmoud",
role: "Client",
quote: "Truly modern pieces and exceptional customer care.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/look-my-ring-is-very-similar_329181-8041.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
);
}