Compare commits
21 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 9f98cf0a66 | |||
| 5d3ab44df3 | |||
| 5c1d3f82f8 | |||
| 9ec81e906f | |||
| 8f684be285 | |||
| b2cafabf6f | |||
| c36f63aa78 | |||
| 1bd9cc67e4 | |||
| dab6ae7e6a | |||
| 8855bce892 | |||
| bab34abca5 | |||
| 7f10c1c912 | |||
| 33224b1ad1 | |||
| 37a14f2ff1 | |||
| f9db8b60bb | |||
| 9b39ccca28 | |||
| 407ad0b512 | |||
| 350b44b054 | |||
| 65dd2c8b6c | |||
| 4d02d60fdc | |||
| 6b115b07bd |
245
src/app/page.tsx
245
src/app/page.tsx
@@ -2,19 +2,24 @@
|
|||||||
|
|
||||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
import ReactLenis from "lenis/react";
|
import ReactLenis from "lenis/react";
|
||||||
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
|
import { useState } from "react";
|
||||||
import FaqDouble from '@/components/sections/faq/FaqDouble';
|
import { X, ExternalLink } from "lucide-react";
|
||||||
import FeatureBorderGlow from '@/components/sections/feature/featureBorderGlow/FeatureBorderGlow';
|
|
||||||
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
|
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
|
||||||
import HeroSplitDoubleCarousel from '@/components/sections/hero/HeroSplitDoubleCarousel';
|
import HeroSplitDoubleCarousel from '@/components/sections/hero/HeroSplitDoubleCarousel';
|
||||||
import MetricCardOne from '@/components/sections/metrics/MetricCardOne';
|
|
||||||
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
|
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
|
||||||
import ProductCardThree from '@/components/sections/product/ProductCardThree';
|
import ProductCardThree from '@/components/sections/product/ProductCardThree';
|
||||||
import TestimonialCardFifteen from '@/components/sections/testimonial/TestimonialCardFifteen';
|
|
||||||
import TextAbout from '@/components/sections/about/TextAbout';
|
import TextAbout from '@/components/sections/about/TextAbout';
|
||||||
import { Clock, Flame, MapPin, MessageSquare, Star, Truck } from "lucide-react";
|
|
||||||
|
|
||||||
export default function LandingPage() {
|
export default function LandingPage() {
|
||||||
|
const [isMenuOpen, setIsMenuOpen] = useState(false);
|
||||||
|
|
||||||
|
const menuItems = [
|
||||||
|
{ name: "Kebab Clásico" },
|
||||||
|
{ name: "Dürum de Pollo" },
|
||||||
|
{ name: "Pita Falafel" },
|
||||||
|
{ name: "Pizza Barbacoa" },
|
||||||
|
];
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<ThemeProvider
|
<ThemeProvider
|
||||||
defaultButtonVariant="hover-bubble"
|
defaultButtonVariant="hover-bubble"
|
||||||
@@ -32,224 +37,88 @@ export default function LandingPage() {
|
|||||||
<div id="nav" data-section="nav">
|
<div id="nav" data-section="nav">
|
||||||
<NavbarStyleApple
|
<NavbarStyleApple
|
||||||
navItems={[
|
navItems={[
|
||||||
{
|
{ name: "Inicio", id: "hero" },
|
||||||
name: "Inicio", id: "hero"},
|
{ name: "Ver Carta", id: "menu-popup" },
|
||||||
{
|
{ name: "Opiniones", id: "testimonials" },
|
||||||
name: "Menú", id: "products"},
|
{ name: "Contacto", id: "contact" },
|
||||||
{
|
|
||||||
name: "Opiniones", id: "testimonials"},
|
|
||||||
{
|
|
||||||
name: "Contacto", id: "contact"},
|
|
||||||
]}
|
]}
|
||||||
brandName="Tchey"
|
brandName="Tchey"
|
||||||
/>
|
/>
|
||||||
|
{isMenuOpen && (
|
||||||
|
<div className="fixed inset-0 z-50 flex items-center justify-center bg-black/80 p-4">
|
||||||
|
<div className="w-full max-w-md rounded-2xl bg-white p-8 text-black">
|
||||||
|
<div className="flex justify-between items-center mb-6">
|
||||||
|
<h2 className="text-2xl font-bold">Nuestra Carta</h2>
|
||||||
|
<button onClick={() => setIsMenuOpen(false)}><X /></button>
|
||||||
|
</div>
|
||||||
|
<ul className="space-y-4">
|
||||||
|
{menuItems.map((item, idx) => (
|
||||||
|
<li key={idx} className="flex justify-between border-b pb-2">
|
||||||
|
<span>{item.name}</span>
|
||||||
|
</li>
|
||||||
|
))}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="hero" data-section="hero">
|
<div id="hero" data-section="hero">
|
||||||
<HeroSplitDoubleCarousel
|
<HeroSplitDoubleCarousel
|
||||||
background={{
|
background={{ variant: "gradient-bars" }}
|
||||||
variant: "gradient-bars"}}
|
|
||||||
title="Tchey: Autenticidad en cada bocado"
|
title="Tchey: Autenticidad en cada bocado"
|
||||||
description="El kebab de barrio más querido de Barcelona. Sabor real, precio honesto, abierto hasta tarde para ti."
|
description="El kebab de barrio más querido de Barcelona. Sabor real, precio honesto, abierto hasta tarde para ti."
|
||||||
leftCarouselItems={[
|
leftCarouselItems={[
|
||||||
{
|
{ imageSrc: "http://img.b2bpic.net/free-photo/turkish-doner-inside-round-bread-with-french-fries-yogurt_114579-1423.jpg", imageAlt: "Kebab rotisserie" },
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/turkish-doner-inside-round-bread-with-french-fries-yogurt_114579-1423.jpg", imageAlt: "Kebab rotisserie"},
|
|
||||||
{
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/shaurma-with-meat-marinated-food_114579-2122.jpg", imageAlt: "Durum chicken"},
|
|
||||||
{
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/tortilla-wrap-with-falafel-fresh-salad-vegan-tacos-vegetarian-healthy-food_2829-14400.jpg", imageAlt: "Falafel pita"},
|
|
||||||
{
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/french-fries-bowl_1220-272.jpg", imageAlt: "Patatas bravas"},
|
|
||||||
{
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/traditional-italian-mini-pizza-wooden-plate-marble-table_114579-82432.jpg", imageAlt: "Nan cheese"},
|
|
||||||
]}
|
]}
|
||||||
rightCarouselItems={[
|
rightCarouselItems={[
|
||||||
{
|
{ imageSrc: "http://img.b2bpic.net/free-photo/lule-kebab-fried-potato-with-vegetables-onion_141793-688.jpg", imageAlt: "Kebab plate" },
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/lule-kebab-fried-potato-with-vegetables-onion_141793-688.jpg", imageAlt: "Kebab plate"},
|
|
||||||
{
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/arabic-kebab-sandwich-high-view-food_23-2148651083.jpg", imageAlt: "Durum chicken"},
|
|
||||||
{
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/falafel-fresh-vegetables-buddha-bowl-middle-eastern-arabic-dishes_2829-14480.jpg", imageAlt: "Falafel pita"},
|
|
||||||
{
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/flat-lay-french-fries-bowls-with-salt-herbs_23-2148701504.jpg", imageAlt: "Patatas bravas"},
|
|
||||||
{
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/top-view-traditional-caucasian-food-kutab-wooden-cutting-board_140725-10411.jpg", imageAlt: "Nan cheese"},
|
|
||||||
]}
|
|
||||||
buttons={[
|
|
||||||
{
|
|
||||||
text: "Ver Carta", href: "#products"},
|
|
||||||
]}
|
|
||||||
avatars={[
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/front-view-man-with-delicious-taco_23-2151048068.jpg", alt: "Customer 1"},
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/smiley-woman-with-burger-showing-approval_23-2148705546.jpg", alt: "Customer 2"},
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/front-view-mexican-woman-eating-ranchero-food_23-2150222250.jpg", alt: "Customer 3"},
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/front-view-woman-with-delicious-taco_23-2151047998.jpg", alt: "Customer 4"},
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/medium-shot-smiley-man-with-chain-necklace_23-2149409803.jpg", alt: "Customer 5"},
|
|
||||||
]}
|
|
||||||
avatarText="Más de 800 clientes felices"
|
|
||||||
marqueeItems={[
|
|
||||||
{
|
|
||||||
type: "image", src: "http://img.b2bpic.net/free-photo/view-delicious-shawarma-dish_23-2151805527.jpg", alt: "Kebab brand"},
|
|
||||||
{
|
|
||||||
type: "image", src: "http://img.b2bpic.net/free-photo/doner-kebab-roasting-spti_53876-34017.jpg", alt: "Fresh meat brand"},
|
|
||||||
{
|
|
||||||
type: "image", src: "http://img.b2bpic.net/free-photo/view-delicious-shawarma-dish_23-2151805532.jpg", alt: "Authentic taste brand"},
|
|
||||||
{
|
|
||||||
type: "image", src: "http://img.b2bpic.net/free-photo/lamb-kebab-doner-placed-flatbread-served-with-fried-pickled-cucumber-cabbage_140725-8323.jpg", alt: "Street food icon"},
|
|
||||||
{
|
|
||||||
type: "image", src: "http://img.b2bpic.net/free-photo/side-view-lamb-kebab-with-herbs-vegetables-wooden-board_140725-10351.jpg", alt: "Barcelona icon"},
|
|
||||||
]}
|
]}
|
||||||
|
buttons={[{ text: "Ver Carta", onClick: () => setIsMenuOpen(true) }]}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="about" data-section="about">
|
<div id="about" data-section="about"><TextAbout title="Más que un kebab, una institución en Barcelona" useInvertedBackground={false} /></div>
|
||||||
<TextAbout
|
|
||||||
useInvertedBackground={false}
|
|
||||||
title="Más que un kebab, una institución en Barcelona"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="products" data-section="products">
|
<div id="products" data-section="products">
|
||||||
<ProductCardThree
|
<ProductCardThree
|
||||||
animationType="slide-up"
|
animationType="slide-up"
|
||||||
textboxLayout="split"
|
textboxLayout="split"
|
||||||
gridVariant="four-items-2x2-equal-grid"
|
gridVariant="four-items-2x2-equal-grid"
|
||||||
|
title="Platos Destacados"
|
||||||
|
description="Nuestros mejores platos"
|
||||||
useInvertedBackground={false}
|
useInvertedBackground={false}
|
||||||
products={[
|
products={[
|
||||||
{
|
{ id: "1", name: "Kebab Clásico", price: "", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DRezYrwknETVt8UIqZ86LaguOc/uploaded-1778252482198-0lg3jlx9.webp" },
|
||||||
id: "1", name: "Kebab Clásico", price: "5.50€", imageSrc: "http://img.b2bpic.net/free-photo/two-pieces-beef-steaks-served-lavash-with-species_114579-1990.jpg"},
|
{ id: "2", name: "Nan con queso de cabra", price: "", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DRezYrwknETVt8UIqZ86LaguOc/uploaded-1778252379761-ylkpv5ye.jpg" },
|
||||||
{
|
{ id: "3", name: "Pita Falafel", price: "", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DRezYrwknETVt8UIqZ86LaguOc/uploaded-1778252442872-rveb6prc.webp" },
|
||||||
id: "2", name: "Dürum de Pollo", price: "6.00€", imageSrc: "http://img.b2bpic.net/free-photo/roasted-meat-with-flapjack-served-with-pickles_140725-1210.jpg"},
|
{ id: "4", name: "Pizza Pepperoni", price: "", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DRezYrwknETVt8UIqZ86LaguOc/uploaded-1778252247882-h6dhhflp.jpg" },
|
||||||
{
|
|
||||||
id: "3", name: "Pita Falafel", price: "5.00€", imageSrc: "http://img.b2bpic.net/free-photo/arabic-kebab-sandwich-sauce-pita-bread_23-2148651101.jpg"},
|
|
||||||
{
|
|
||||||
id: "4", name: "Pizza Barbacoa", price: "8.00€", imageSrc: "http://img.b2bpic.net/free-photo/top-view-meat-pizza-with-bell-pepper-barbecue-sauce-tray_140725-11546.jpg"},
|
|
||||||
{
|
|
||||||
id: "5", name: "Patatas Bravas", price: "4.50€", imageSrc: "http://img.b2bpic.net/free-photo/delicious-cooked-potatoes-wooden-board_23-2148619065.jpg"},
|
|
||||||
{
|
|
||||||
id: "6", name: "Nan con Queso de Cabra", price: "5.50€", imageSrc: "http://img.b2bpic.net/free-photo/meat-pide-table_140725-6716.jpg"},
|
|
||||||
]}
|
]}
|
||||||
title="Platos Destacados"
|
|
||||||
description="Desde 5€, sabor auténtico para todos los bolsillos."
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="feature" data-section="feature">
|
|
||||||
<FeatureBorderGlow
|
|
||||||
animationType="slide-up"
|
|
||||||
textboxLayout="split"
|
|
||||||
useInvertedBackground={false}
|
|
||||||
features={[
|
|
||||||
{
|
|
||||||
icon: Clock,
|
|
||||||
title: "Abierto hasta tarde", description: "Tu hambre no espera, y nosotros tampoco."},
|
|
||||||
{
|
|
||||||
icon: MapPin,
|
|
||||||
title: "Ubicación ideal", description: "Carrer del Consell de Cent 455, Barcelona."},
|
|
||||||
{
|
|
||||||
icon: Truck,
|
|
||||||
title: "Entrega a domicilio", description: "Pide desde casa y disfruta de tu kebab."},
|
|
||||||
]}
|
|
||||||
title="Por qué elegirnos"
|
|
||||||
description="Calidad, cercanía y el mejor sabor de la ciudad."
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="metrics" data-section="metrics">
|
|
||||||
<MetricCardOne
|
|
||||||
animationType="depth-3d"
|
|
||||||
textboxLayout="default"
|
|
||||||
gridVariant="uniform-all-items-equal"
|
|
||||||
useInvertedBackground={false}
|
|
||||||
metrics={[
|
|
||||||
{
|
|
||||||
id: "1", value: "838+", title: "Reseñas", description: "Comentarios de clientes satisfechos", icon: MessageSquare,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: "2", value: "4.3", title: "Estrellas", description: "Valoración media de los clientes", icon: Star,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: "3", value: "100%", title: "Sabor real", description: "Recetas tradicionales de calidad", icon: Flame,
|
|
||||||
},
|
|
||||||
]}
|
|
||||||
title="Números que hablan por sí solos"
|
|
||||||
description="La confianza de nuestros vecinos."
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="testimonials" data-section="testimonials">
|
|
||||||
<TestimonialCardFifteen
|
|
||||||
useInvertedBackground={false}
|
|
||||||
testimonial="Combo durum patatas y bebida 6.50, simplemente brutal, además son muy majos"
|
|
||||||
rating={5}
|
|
||||||
author="Cliente Tchey"
|
|
||||||
avatars={[
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/woman-having-fun-food-festival_23-2149500432.jpg", alt: "Customer 1"},
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/hipster-with-stylish-haircut-beard-sits-table-roadside-cafe-drinks-soda-hot-day_613910-19633.jpg", alt: "Customer 2"},
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/medium-shot-man-luxury-restaurant_23-2150598415.jpg", alt: "Customer 3"},
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/pretty-female-plaster-background_1187-5551.jpg", alt: "Customer 4"},
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/woman-eating-pasta-italian-restaurant_1303-24362.jpg", alt: "Customer 5"},
|
|
||||||
]}
|
|
||||||
ratingAnimation="slide-up"
|
|
||||||
avatarsAnimation="blur-reveal"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="faq" data-section="faq">
|
|
||||||
<FaqDouble
|
|
||||||
textboxLayout="split"
|
|
||||||
useInvertedBackground={false}
|
|
||||||
faqs={[
|
|
||||||
{
|
|
||||||
id: "1", title: "¿Tienen servicio a domicilio?", content: "Todavía no tenemos ese servicio disponible."},
|
|
||||||
{
|
|
||||||
id: "2", title: "¿Cuál es el precio medio?", content: "Los platos principales van de 5€ a 10€."},
|
|
||||||
{
|
|
||||||
id: "3", title: "¿Tienen opciones vegetarianas?", content: "Sí, nuestra pita falafel es una excelente opción."},
|
|
||||||
]}
|
|
||||||
title="Preguntas frecuentes"
|
|
||||||
description="Todo lo que necesitas saber sobre nosotros."
|
|
||||||
faqsAnimation="slide-up"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="contact" data-section="contact">
|
<div id="contact" data-section="contact">
|
||||||
<ContactSplitForm
|
<div className="py-20">
|
||||||
useInvertedBackground={false}
|
<h2 className="text-center text-4xl font-bold mb-10">Dónde estamos ubicados?</h2>
|
||||||
title="Visítanos o haznos un pedido"
|
<div className="flex flex-col items-center gap-6">
|
||||||
description="Carrer del Consell de Cent 455, Barcelona. Teléfono: 932 45 12 21"
|
<div className="w-full max-w-2xl h-80 bg-gray-200 rounded-xl overflow-hidden">
|
||||||
inputs={[
|
<iframe width="100%" height="100%" src="https://maps.google.com/maps?q=Carrer+del+Consell+de+Cent+455,Barcelona&output=embed"></iframe>
|
||||||
{
|
</div>
|
||||||
name: "nombre", type: "text", placeholder: "Tu nombre"},
|
<a href="https://www.google.com/maps/dir/?api=1&destination=Carrer+del+Consell+de+Cent+455,Barcelona" target="_blank" className="inline-flex items-center gap-2 bg-primary-cta text-white px-6 py-3 rounded-full font-bold">
|
||||||
{
|
Cómo llegar <ExternalLink size={18} />
|
||||||
name: "email", type: "email", placeholder: "Tu email"},
|
</a>
|
||||||
]}
|
</div>
|
||||||
textarea={{
|
</div>
|
||||||
name: "mensaje", placeholder: "Tu pedido o consulta"}}
|
|
||||||
imageSrc="http://img.b2bpic.net/free-photo/therapist-taking-notes-mental-health-progress-with-adolescent_482257-124828.jpg"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="footer" data-section="footer">
|
<div id="footer" data-section="footer">
|
||||||
<FooterLogoReveal
|
<FooterLogoReveal
|
||||||
logoText="Tchey Kebab"
|
logoText="Tchey Kebab"
|
||||||
leftLink={{
|
leftLink={{ text: "Privacidad", href: "#" }}
|
||||||
text: "Privacidad", href: "#"}}
|
rightLink={{ text: "Instagram", href: "#" }}
|
||||||
rightLink={{
|
|
||||||
text: "Instagram", href: "#"}}
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</ReactLenis>
|
</ReactLenis>
|
||||||
</ThemeProvider>
|
</ThemeProvider>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user