This commit is contained in:
Vula Builder
2026-07-26 16:56:14 +00:00
parent be194e69f0
commit 8fdf5a124b
+408
View File
@@ -0,0 +1,408 @@
{
"projectName": "vaVenda Lodge",
"businessType": "hotel",
"industry": "hotel",
"tone": "",
"tier": 2,
"serviceType": "hotel",
"generatedAt": "2026-07-26T16:54:21.201Z",
"sections": [
{
"name": "VendaWelcomeHeroSection",
"importPath": "@/components/sections/VendaWelcomeHeroSection",
"position": 0,
"role": "hero",
"hasImage": true,
"hasForm": false,
"itemCount": 2,
"layout": "flex-row",
"headings": [
"Where Venda Heritage Meets Modern Comfort"
],
"buttonLabels": [
"Explore Our Rooms"
],
"people": [],
"allText": [
"next/image",
"next/link",
"@/components/ui/Button",
"vendawelcomehero",
"welcome-hero",
"relative h-screen flex items-center justify-center overflow-hidden",
"Sweeping view of Limpopo bushveld with terracotta lodge architecture",
"100vw",
"object-cover",
"absolute inset-0 bg-gradient-to-b from-[#0d2114]/70 to-[#0d2114]/40",
"relative z-10 text-center max-w-3xl px-6",
"text-[#d4af37] text-lg md:text-xl italic mb-4 font-serif",
"\"Muthu ndi muthu nga vhathu — A person is a person through others\"",
"text-4xl md:text-6xl font-bold text-white mb-6 leading-tight",
"Where Venda Heritage Meets Modern Comfort",
"text-lg md:text-xl text-[#f4f9f5] mb-8 max-w-xl mx-auto",
"Six distinct rooms, handcrafted decor, and the warmth of Limpopo's ancient culture — your retreat awaits.",
"default",
"lg",
"bg-[#16a34a] hover:bg-[#15803d] text-white px-8 py-3 rounded-full text-lg",
"Explore Our Rooms"
]
},
{
"name": "VendaHeritageRoomsSection",
"importPath": "@/components/sections/VendaHeritageRoomsSection",
"position": 1,
"role": "unknown",
"hasImage": true,
"hasForm": false,
"itemCount": 10,
"layout": "grid",
"headings": [
"Six Rooms, Each a Home"
],
"buttonLabels": [
"Book Now"
],
"people": [],
"allText": [
"use client",
"@/hooks/useMedusaProducts",
"@/components/ui/Card",
"@/components/ui/Button",
"next/link",
"next/image",
"vendaheritagerooms",
"venda-rooms",
"py-20 bg-[#f4f9f5]",
"container mx-auto px-4 text-center",
"text-[#8b5a3c] animate-pulse",
"Loading rooms...",
"text-red-600",
"Could not load rooms. Please try again later.",
"container mx-auto px-4",
"text-3xl md:text-4xl font-bold text-[#0d2114] text-center mb-4",
"Six Rooms, Each a Home",
"text-center text-[#8b5a3c] mb-12 max-w-2xl mx-auto",
"Named after Venda fruit trees — Muvhuyu, Murula, Muumo — each room weaves handcrafted decor with local tradition.",
"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-8",
"overflow-hidden border border-[#d4e2d9] shadow-lg hover:shadow-xl transition-shadow duration-200",
"relative h-56 w-full overflow-hidden",
"(max-width: 640px) 100vw, (max-width: 1024px) 50vw, 33vw",
"object-cover hover:scale-105 transition-transform duration-500 ease-out",
"text-[#0d2114] text-xl",
"text-[#8b5a3c] text-sm mb-2 line-clamp-2",
"text-[#16a34a] font-bold text-lg",
"/ night",
"w-full",
"default",
"sm",
"w-full bg-[#16a34a] hover:bg-[#15803d] text-white",
"Book Now",
"col-span-full text-center text-[#8b5a3c]",
"No rooms available yet. Check back soon."
]
},
{
"name": "VendaRootsStorySection",
"importPath": "@/components/sections/VendaRootsStorySection",
"position": 2,
"role": "about",
"hasImage": true,
"hasForm": false,
"itemCount": 5,
"layout": "grid",
"headings": [
"Built on Blessings, Rooted in Tradition"
],
"buttonLabels": [],
"people": [],
"allText": [
"next/image",
"vendarootsstory",
"our-story",
"py-20 bg-white",
"container mx-auto px-4 grid md:grid-cols-2 gap-12 items-center",
"relative h-80 md:h-96 rounded-2xl overflow-hidden shadow-xl",
"Limpopo bushveld landscape near the lodge",
"(max-width: 768px) 100vw, 50vw",
"object-cover",
"absolute bottom-4 left-4 bg-[#d4af37] text-[#0d2114] px-4 py-1 rounded-full text-sm font-semibold",
"Since 2015",
"text-3xl md:text-4xl font-bold text-[#0d2114] mb-6",
"Built on Blessings, Rooted in Tradition",
"space-y-4 text-[#0d2114]/80 leading-relaxed",
"Our founders first met the elders of the Venda village of Tshivhase in 2012, sitting under a centuries-old mopane tree. They spoke of the land, its spirits, and the importance of sharing it with honour. From that conversation, the idea of vaVenda Lodge was born — a place where guests could experience the deep hospitality of the Venda people without leaving behind modern comfort.",
"Every detail honours that promise. The lodge's terracotta walls are built with local clay; the six rooms are named after indigenous fruit trees that elders taught us to recognise. Our staff come from the surrounding villages, and morning tea is served with mopane honey collected by community cooperatives.",
"italic text-[#8b5a3c] border-l-4 border-[#d4af37] pl-4",
"“We don't just host guests — we welcome them into an extended family. The story of the Venda people is told through every meal, every walk, every quiet sunset.”"
]
},
{
"name": "VendaCulturalImmersionSection",
"importPath": "@/components/sections/VendaCulturalImmersionSection",
"position": 3,
"role": "unknown",
"hasImage": true,
"hasForm": false,
"itemCount": 3,
"layout": "grid",
"headings": [
"Experiences that stay with you",
"{exp.title}"
],
"buttonLabels": [],
"people": [
"Tshigombela Dance Evenings",
"Sacred Sites Walk"
],
"allText": [
"next/image",
"Tshigombela Dance Evenings",
"Feel the rhythm of the Venda people as dancers in beaded skirts and ankle rattles tell stories of harvest, courtship, and ancestors under the starlit Soutpansberg sky.",
"Pottery with Local Artisans",
"Sit at the wheel alongside master potters from nearby villages, shaping clay fired in traditional kilns. Take home a vessel marked with the same ochre earth that colours the Limpopo landscape.",
"Sacred Sites Walk",
"Walk to Lake Fundudzi, where the water lies still and the ancestors are said to speak through the reeds. Our guide shares oral histories passed down over ten generations.",
"vendaculturalimmersion",
"venda-experiences",
"py-20 bg-[#f4f9f5]",
"container mx-auto px-4 max-w-7xl",
"text-4xl md:text-5xl font-heading text-[#0d2114] mb-4",
"Experiences that stay with you",
"text-lg text-[#8b5a3c] mb-12 max-w-2xl",
"Every activity at vaVenda Lodge is a doorway into the living culture of the Venda people. Handpicked for depth, not spectacle.",
"grid grid-cols-1 md:grid-cols-3 gap-8",
"group bg-white rounded-2xl overflow-hidden shadow-soft hover:shadow-lg transition-all duration-300",
"relative h-56 overflow-hidden",
"(max-width: 768px) 100vw, 33vw",
"object-cover group-hover:scale-105 transition-transform duration-500 ease-out",
"p-6",
"text-xl font-heading text-[#16a34a] mb-2",
"text-[#0d2114]/80 leading-relaxed font-body"
]
},
{
"name": "VendaSeasonalSpecialsSection",
"importPath": "@/components/sections/VendaSeasonalSpecialsSection",
"position": 4,
"role": "cms-promotions",
"hasImage": true,
"hasForm": false,
"itemCount": -1,
"layout": "grid",
"headings": [
"Seasonal specials"
],
"buttonLabels": [],
"people": [],
"allText": [
"use client",
"react",
"@/hooks/useEmDashContent",
"next/image",
"@/components/ui/Card",
"promotions",
"flex justify-center py-16",
"w-8 h-8 rounded-full border-2 border-[#16a34a] border-t-transparent animate-spin",
"specials",
"vendaseasonalspecials",
"py-20 bg-white",
"container mx-auto px-4 max-w-7xl",
"text-4xl md:text-5xl font-heading text-[#0d2114] mb-4",
"Seasonal specials",
"text-lg text-[#8b5a3c] mb-12 max-w-2xl",
"Limited-time packages tied to Venda seasons and celebrations. Book now to secure your place.",
"grid grid-cols-1 md:grid-cols-3 gap-8",
"bg-[#f4f9f5] border-0 rounded-2xl overflow-hidden shadow-soft hover:shadow-lg transition-all duration-300",
"relative h-48 overflow-hidden",
"Special offer",
"(max-width: 768px) 100vw, 33vw",
"object-cover",
"p-6",
"text-xl font-heading text-[#16a34a] mb-2",
"text-[#0d2114]/80 mb-4 font-body",
"text-[#d4af37] font-bold text-lg",
"mt-4 px-6 py-2 bg-[#16a34a] text-white rounded-full font-medium hover:bg-[#16a34a]/90 transition-colors",
"Show less",
"Book now",
"text-sm text-[#8b5a3c] mt-2",
"Booking link will appear here."
],
"cmsCollection": "promotions"
},
{
"name": "VendaGuestStoriesSection",
"importPath": "@/components/sections/VendaGuestStoriesSection",
"position": 5,
"role": "unknown",
"hasImage": false,
"hasForm": false,
"itemCount": 3,
"layout": "grid",
"headings": [
"What our guests say"
],
"buttonLabels": [],
"people": [],
"allText": [
"use client",
"AK",
"A. K., Johannesburg",
"I learned how to say 'Ndaa' with the right tone, and the whole village smiled. That moment of connection was worth the entire trip.",
"MT",
"M. T., Cape Town",
"Tasting mopani worms for the first time — crunchy, nutty, and cooked by a grandmother who laughed at my hesitation. Now I crave them.",
"LR",
"L. R., London",
"Watching the sunrise from the lodge deck, with the Soutpansberg turning gold and the baobabs silhouetted, I felt completely still.",
"vendagueststories",
"guest-stories",
"py-20 bg-[#f4f9f5]",
"container mx-auto px-4 max-w-7xl",
"text-4xl md:text-5xl font-heading text-[#0d2114] mb-4 text-center",
"What our guests say",
"text-lg text-[#8b5a3c] mb-12 max-w-2xl mx-auto text-center",
"Real stories shared over the fire, around the table.",
"grid grid-cols-1 md:grid-cols-3 gap-8",
"bg-white rounded-2xl p-8 shadow-soft border-l-4 border-[#d4af37]",
"flex items-center gap-4 mb-4",
"w-12 h-12 rounded-full bg-[#d4af37]/20 flex items-center justify-center font-bold text-[#d4af37] text-lg",
"text-[#0d2114] font-heading font-semibold",
"text-[#0d2114]/80 leading-relaxed font-body italic text-base",
"“",
"”",
"mt-4 flex gap-1 text-[#d4af37]"
]
},
{
"name": "VendaVisionsGallerySection",
"importPath": "@/components/sections/VendaVisionsGallerySection",
"position": 6,
"role": "gallery",
"hasImage": true,
"hasForm": false,
"itemCount": -1,
"layout": "grid",
"headings": [
"Visual stories from the lodge"
],
"buttonLabels": [],
"people": [],
"allText": [
"use client",
"@/hooks/useEmDashContent",
"next/image",
"react",
"gallery",
"flex justify-center py-16",
"w-8 h-8 rounded-full border-2 border-[#16a34a] border-t-transparent animate-spin",
"vendavisionsgallery",
"py-20 bg-white",
"container mx-auto px-4 max-w-7xl",
"text-4xl md:text-5xl font-heading text-[#0d2114] mb-4",
"Visual stories from the lodge",
"text-lg text-[#8b5a3c] mb-12 max-w-2xl",
"A gallery that moves from architecture to landscape to craft — every image a glimpse into life at vaVenda.",
"grid grid-cols-2 md:grid-cols-3 gap-4",
"relative aspect-square overflow-hidden rounded-xl cursor-pointer group",
"Gallery image",
"(max-width: 768px) 50vw, 33vw",
"object-cover group-hover:scale-105 transition-transform duration-500 ease-out",
"absolute inset-0 bg-black/0 group-hover:bg-black/20 transition-colors duration-300 flex items-end p-4",
"text-white font-heading text-sm opacity-0 group-hover:opacity-100 transition-opacity duration-300",
"fixed inset-0 bg-black/80 z-50 flex items-center justify-center p-4",
"relative max-w-4xl w-full aspect-video",
"Gallery",
"100vw",
"object-contain",
"absolute top-4 right-4 text-white text-2xl",
"Close lightbox",
"×"
],
"cmsCollection": "gallery"
},
{
"name": "VendaLodgeEnquirySection",
"importPath": "@/components/sections/VendaLodgeEnquirySection",
"position": 7,
"role": "contact",
"hasImage": true,
"hasForm": true,
"itemCount": -1,
"layout": "grid",
"headings": [
"We already know the stars by name, and we'll be waiting to show them to you.",
"Reception & Check-in Hours",
"Thank You!",
"Send us an enquiry",
"Location of vaVenda Lodge"
],
"buttonLabels": [
"Send Enquiry"
],
"people": [],
"allText": [
"use client",
"react",
"@/hooks/useEmDashContent",
"@/components/ui/Card",
"@/components/ui/Button",
"@/components/ui/Input",
"lucide-react",
"next/image",
"business_hours",
"flex justify-center py-16",
"w-8 h-8 rounded-full border-2 border-current border-t-transparent animate-spin",
"saturday",
"sunday",
"w-5 h-5 text-[#8b5a3c]",
"contact",
"vendalodgeenquiry",
"py-20 bg-[#f4f9f5]",
"container mx-auto px-4 max-w-7xl",
"grid md:grid-cols-2 gap-12 items-start",
"text-3xl font-bold text-[#0d2114] mb-2 font-heading",
"We already know the stars by name, and we'll be waiting to show them to you.",
"text-[#16a34a] font-semibold text-lg mb-8 font-body italic",
"Reach out we're family-run, warm, and ready.",
"space-y-4 mb-8",
"flex items-center gap-3",
"text-[#0d2114]",
"Nzhelele Valley, Limpopo, South Africa",
"+27 12 345 6789",
"info@vavendalodge.co.za",
"WhatsApp: +27 82 123 4567",
"bg-white rounded-2xl p-6 shadow-soft border border-[#d4e2d9]",
"text-xl font-semibold text-[#0d2114] mb-4 font-heading",
"Reception & Check-in Hours",
"space-y-3",
"flex items-center gap-3 border-b border-[#d4e2d9] pb-2 last:border-0",
"shrink-0",
"font-medium text-[#0d2114] flex-1",
"outline",
"text-xs",
"Closed",
"text-[#16a34a] text-sm",
"text-xs text-[#8b5a3c] italic",
"text-xs text-muted-foreground mt-3",
"Public holidays may vary please enquire.",
"space-y-8",
"bg-white border-[#d4e2d9] shadow-soft",
"p-6",
"text-center py-8",
"text-[#16a34a] text-4xl mb-2",
"text-xl font-bold text-[#0d2114] mb-2"
],
"cmsCollection": "business_hours"
}
],
"navigationLinks": [
"vaVenda Lodge",
"Home",
"Venda Heritage Rooms",
"Venda Roots Story",
"Venda Cultural Immersion",
"Venda Visions Gallery",
"Venda Lodge Enquiry",
"Book a Room"
]
}