This commit is contained in:
gpt-engineer-app[bot]
2026-03-05 15:50:22 +00:00
parent b331aa1a7d
commit a11683b7dc
23 changed files with 2958 additions and 96 deletions

237
src/data/event-data.ts Normal file
View File

@@ -0,0 +1,237 @@
/**
* ===========================================
* DATOS DEL EVENTO — ZoukLambadaBCN
* ===========================================
*
* Este archivo centraliza TODOS los datos editables del evento.
* Para modificar cualquier información, simplemente edita las
* constantes de este archivo.
*
* NOTA: Las imágenes deben colocarse en src/assets/ e importarse.
*/
// ---- INFORMACIÓN GENERAL DEL EVENTO ----
export const EVENT_INFO = {
name: "Lambada Festival Barcelona",
subtitle: "by ZoukLambadaBCN",
/** Fecha del evento — formato ISO para el countdown */
date: "2026-06-20T18:00:00",
/** Fecha legible para mostrar */
dateDisplay: "2022 Junio 2026",
city: "Barcelona, España",
venue: "[Nombre del Venue]",
venueAddress: "[Dirección del venue, Barcelona]",
/** Google Maps embed URL — reemplazar con la URL real */
mapEmbedUrl: "https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2993.5!2d2.1734!3d41.3851!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x0%3A0x0!2zNDHCsDIzJzA2LjQiTiAywrAxMCcyNC4yIkU!5e0!3m2!1ses!2ses!4v1234567890",
totalSeats: 150,
};
// ---- WEBHOOK N8N ----
/**
* CONFIGURACIÓN DEL WEBHOOK:
*
* 1. En n8n, crea un nuevo workflow con un nodo "Webhook"
* 2. Configura el webhook como POST
* 3. Copia la URL generada y pégala aquí abajo
* 4. En n8n, conecta el webhook a tu destino (Google Sheets, Airtable, etc.)
*
* Ejemplo de payload que se envía:
* {
* "name": "Juan García",
* "email": "juan@example.com",
* "seats": "2",
* "country": "España",
* "comment": "Primera vez en el festival"
* }
*/
export const WEBHOOK_URL = "https://YOUR-N8N-INSTANCE/webhook/event-reservation";
// ---- SOBRE EL EVENTO ----
export const ABOUT_EVENT = {
title: "Sobre el Evento",
description: `[Descripción del evento. Explica qué hace especial esta edición,
qué pueden esperar los asistentes, y por qué no se lo pueden perder.]`,
lambadaInfo: `La Lambada es un baile brasileño nacido en los años 80,
conocido por su sensualidad, conexión y ritmo envolvente.
Mezcla influencias de forró, merengue y carimbó,
creando una experiencia de baile única y apasionante.`,
highlights: [
"Workshops con artistas internacionales",
"Social dancing durante toda la noche",
"Shows en vivo",
"DJ sets tropicales",
],
};
// ---- SOBRE ZOUKLAMBADABCN ----
export const ABOUT_ORG = {
title: "ZoukLambadaBCN",
history: `[Historia del grupo organizador. Cuándo se fundó,
cómo empezó, qué han logrado hasta ahora.]`,
philosophy: `[Filosofía del grupo. Qué valores defienden,
qué quieren aportar a la comunidad de baile.]`,
socials: {
instagram: "https://instagram.com/zouklambadabcn",
facebook: "https://facebook.com/zouklambadabcn",
youtube: "https://youtube.com/@zouklambadabcn",
},
};
// ---- STAFF DEL EVENTO ----
/**
* Para añadir un nuevo miembro del staff,
* simplemente agrega un nuevo objeto al array.
*/
export const STAFF = [
{
id: "1",
name: "[Nombre Instructor 1]",
role: "Instructor" as const,
description: "[Breve biografía del instructor]",
/** Reemplazar con ruta a foto real */
image: "",
socials: {
instagram: "",
},
},
{
id: "2",
name: "[Nombre Instructor 2]",
role: "Instructor" as const,
description: "[Breve biografía del instructor]",
image: "",
socials: {
instagram: "",
},
},
{
id: "3",
name: "[Nombre DJ]",
role: "DJ" as const,
description: "[Breve biografía del DJ]",
image: "",
socials: {
instagram: "",
soundcloud: "",
},
},
{
id: "4",
name: "[Nombre Organizador]",
role: "Organizador" as const,
description: "[Breve biografía del organizador]",
image: "",
socials: {
instagram: "",
},
},
];
// ---- PROGRAMA DEL EVENTO ----
export const SCHEDULE = [
{
day: "Viernes 20 Junio",
events: [
{ time: "18:00 19:30", title: "[Workshop 1]", type: "workshop" as const },
{ time: "19:30 20:00", title: "Pausa", type: "break" as const },
{ time: "20:00 21:30", title: "[Workshop 2]", type: "workshop" as const },
{ time: "22:00 03:00", title: "Social Dance + DJ Set", type: "social" as const },
],
},
{
day: "Sábado 21 Junio",
events: [
{ time: "12:00 13:30", title: "[Workshop 3]", type: "workshop" as const },
{ time: "14:00 15:30", title: "[Workshop 4]", type: "workshop" as const },
{ time: "16:00 17:30", title: "[Workshop 5]", type: "workshop" as const },
{ time: "21:00 22:00", title: "Shows en Vivo", type: "show" as const },
{ time: "22:00 04:00", title: "Social Dance + DJ Sets", type: "social" as const },
],
},
{
day: "Domingo 22 Junio",
events: [
{ time: "12:00 13:30", title: "[Workshop 6]", type: "workshop" as const },
{ time: "14:00 15:30", title: "[Workshop 7]", type: "workshop" as const },
{ time: "17:00 22:00", title: "Farewell Party", type: "social" as const },
],
},
];
// ---- HABITACIONES DE HOTEL ----
/**
* Para añadir habitaciones, agrega objetos al array.
* El botón "Reservar" abre el link en nueva pestaña.
*/
export const HOTEL_ROOMS = [
{
id: "1",
name: "[Habitación Individual]",
price: "[XX€/noche]",
description: "[Descripción breve de la habitación]",
/** Reemplazar con URL de imagen real */
image: "",
link: "https://hotel-example.com/booking",
},
{
id: "2",
name: "[Habitación Doble]",
price: "[XX€/noche]",
description: "[Descripción breve de la habitación]",
image: "",
link: "https://hotel-example.com/booking",
},
{
id: "3",
name: "[Suite]",
price: "[XX€/noche]",
description: "[Descripción breve de la habitación]",
image: "",
link: "https://hotel-example.com/booking",
},
];
// ---- INFORMACIÓN PRÁCTICA ----
export const PRACTICAL_INFO = {
airports: [
{ name: "Aeropuerto de Barcelona-El Prat (BCN)", distance: "~15 km del venue" },
{ name: "Aeropuerto de Girona (GRO)", distance: "~100 km del venue" },
{ name: "Aeropuerto de Reus (REU)", distance: "~110 km del venue" },
],
howToGet: [
{ method: "Metro", details: "[Línea y parada más cercana]" },
{ method: "Bus", details: "[Líneas de bus cercanas]" },
{ method: "Taxi/Uber", details: "Disponible desde cualquier punto de Barcelona" },
],
};
// ---- GALERÍA ----
/**
* Añade URLs o importaciones de imágenes.
* Para importar: import img from "@/assets/gallery/photo1.jpg"
*/
export const GALLERY_IMAGES = [
{ src: "", alt: "[Descripción foto 1]" },
{ src: "", alt: "[Descripción foto 2]" },
{ src: "", alt: "[Descripción foto 3]" },
{ src: "", alt: "[Descripción foto 4]" },
{ src: "", alt: "[Descripción foto 5]" },
{ src: "", alt: "[Descripción foto 6]" },
];
// ---- NAVEGACIÓN ----
export const NAV_LINKS = [
{ label: "Sobre", href: "#about" },
{ label: "Staff", href: "#staff" },
{ label: "Programa", href: "#schedule" },
{ label: "Reservar", href: "#booking" },
{ label: "Hotel", href: "#hotel" },
{ label: "Info", href: "#info" },
{ label: "Galería", href: "#gallery" },
];
// ---- FOOTER ----
export const FOOTER = {
email: "[email@zouklambadabcn.com]",
copyright: `© ${new Date().getFullYear()} ZoukLambadaBCN. Todos los derechos reservados.`,
};