From 34ecc2582c5f7d3bb63f71e8942866b15c0195a4 Mon Sep 17 00:00:00 2001 From: itziarZG Date: Wed, 21 Jan 2026 11:42:55 +0100 Subject: [PATCH 01/12] feat: add sponsors info page --- src/pages/sponsors.astro | 156 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 156 insertions(+) create mode 100644 src/pages/sponsors.astro diff --git a/src/pages/sponsors.astro b/src/pages/sponsors.astro new file mode 100644 index 0000000..52ea8c9 --- /dev/null +++ b/src/pages/sponsors.astro @@ -0,0 +1,156 @@ +--- +import Layout from '../layouts/Layout.astro' +import { SPONSORS_EMAIL } from './constants' +// Data +const interests = [ + { label: 'DATA & AI 🤖', pc: '40%', width: '40%' }, + { label: 'WEB & BACKEND 💻', pc: '30%', width: '30%' }, + { label: 'DEVOPS & CLOUD ☁️', pc: '20%', width: '20%' }, + { label: 'OTROS 🔧', pc: '10%', width: '10%' }, +] + +const tiers = [ + { name: 'Bronce', price: '1.000€', limit: 'Ilimitado', color: '#d97706', bg: 'rgba(180, 83, 9, 0.1)' }, + { name: 'Plata', price: '3.000€', limit: '10 disp.', color: '#9ca3af', bg: 'rgba(107, 114, 128, 0.1)' }, + { name: 'Oro', price: '6.000€', limit: '6 disp.', color: '#facc15', bg: 'rgba(234, 179, 8, 0.1)' }, + { + name: 'Platino', + price: '8.000€', + limit: '3 disp.', + color: '#4ade80', + bg: 'rgba(34, 197, 94, 0.1)', + rec: true, + }, + { name: 'Principal', price: 'A medida', limit: '1 disp.', color: '#c084fc', bg: 'rgba(168, 85, 247, 0.1)' }, +] + +const rows = [ + { label: 'Stand físico', data: ['🚫', '🚫', 'Pequeño', 'Mediano', 'Grande'] }, + { label: 'Entradas', data: ['1', '2', '5', '12', 'A medida'] }, + { label: 'Ofertas Web', data: ['-', '1', '4', '8', '8'] }, + { label: 'Mailing', data: ['-', '-', '-', 'Compartido', 'Exclusivo'] }, + { label: 'Cena Ponentes', data: ['-', '-', '-', '✅ Incluido', '✅ Incluido'] }, + { label: 'Charla', data: ['-', '-', '-', 'Secundaria', 'Principal'] }, + { label: 'Video Promo', data: ['-', '-', '-', '1 vez', '3 veces'] }, + { label: 'Logo Lanyards', data: ['-', '-', '-', '-', '✅'] }, + { label: 'Apertura Evento', data: ['-', '-', '-', '-', '✅'] }, +] + +const addons = [ + { t: 'Evento Social', p: '3.000€', disp: '1' }, + { t: 'Cena Ponentes', p: '2.000€', disp: '2' }, + { t: 'Food Sponsor', p: '2.000€', disp: '6' }, + { t: 'Django Girls', p: '1.500€', disp: '1' }, + { t: 'ChiquiPython', p: '500€', disp: '1' }, + { t: 'Becas Diversidad', p: '300€', disp: '7' }, +] +--- + + +
+
+
+ + BARCELONA 2026 + +

Patrocina la PyConES

+

Conecta con +800 expertos Python.

+
+ +
+

> Nivel de Seniority

+ +
+
+ JR 20% +
+
+ SENIOR / PRO 60% +
+
+ EXP 20% +
+
+

El 80% de la audiencia son perfiles experimentados.

+
+ +

Paquetes

+ +
+ + + + + { + tiers.map((t) => ( + + )) + } + + + + { + rows.map((row) => ( + + + {row.data.map((val, i) => ( + + ))} + + )) + } + +
Beneficios + {t.rec && ( +
+ Recomendado +
+ )} +
+ {t.name} +
+
{t.price}
+
{t.limit}
+
+ {row.label} + + {val} +
+
+ +
+

Extras (Add-ons)

+
+ { + addons.map((add) => ( +
+
{add.t}
+
{add.p}
+
+ )) + } +
+
+ +
+ +

{SPONSORS_EMAIL}

+
+
+
+
From 3e70f924c6977458f44a9227c0a6854ea46542e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20Cabello=20Jim=C3=A9nez?= Date: Wed, 21 Jan 2026 22:46:29 +0000 Subject: [PATCH 02/12] feat(sponsors): Add latest information from dossier --- .idea/.gitignore | 10 + src/pages/sponsors.astro | 720 +++++++++++++++++++++++++++++++++------ 2 files changed, 633 insertions(+), 97 deletions(-) create mode 100644 .idea/.gitignore diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..ab1f416 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,10 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Ignored default folder with query files +/queries/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml +# Editor-based HTTP Client requests +/httpRequests/ diff --git a/src/pages/sponsors.astro b/src/pages/sponsors.astro index 52ea8c9..4b82f3a 100644 --- a/src/pages/sponsors.astro +++ b/src/pages/sponsors.astro @@ -1,7 +1,23 @@ --- import Layout from '../layouts/Layout.astro' import { SPONSORS_EMAIL } from './constants' + // Data +const stats = [ + { icon: '👥', value: '+800', label: 'asistentes' }, + { icon: '🎤', value: '+80', label: 'ponentes internacionales y locales' }, + { icon: '🌟', value: '2', label: 'oradores plenarios' }, + { icon: '🗓', value: '3', label: 'días de conferencia' }, + { icon: '🏢', value: '28', label: 'empresas patrocinadoras' }, + { icon: '🤝', value: '+8', label: 'asociaciones colaboradoras' }, +] + +const objectives = [ + { title: 'Conecta con perfiles técnicos', desc: 'difíciles de encontrar' }, + { title: 'Consigue visibilidad', desc: 'sin igual para tu marca' }, + { title: 'Mantente al tanto', desc: 'de las novedades en Python' }, +] + const interests = [ { label: 'DATA & AI 🤖', pc: '40%', width: '40%' }, { label: 'WEB & BACKEND 💻', pc: '30%', width: '30%' }, @@ -9,148 +25,658 @@ const interests = [ { label: 'OTROS 🔧', pc: '10%', width: '10%' }, ] +const audienceStats = [ + { icon: '💼', value: '72%', label: 'Abiertos a ofertas de trabajo' }, + { icon: '🔑', value: '35%', label: 'Toman decisiones en su empresa' }, + { icon: '💜', value: '25%', label: 'Mujeres y no-binarios' }, + { icon: '🌍', value: '10%', label: 'Visitantes internacionales' }, +] + +const whySponsor = [ + { + icon: '🔍', + title: 'CONTRATA', + desc: 'La mayoría de los asistentes son perfiles técnicos activos. Es el entorno ideal para captar talento difícil de encontrar (Seniors, Data Scientists, DevOps, etc.) que muchas veces no está en LinkedIn, sino aquí.', + }, + { + icon: '🤝', + title: 'CONECTA', + desc: 'No solo encontrarás programadores: también directores técnicos y gerentes de otras empresas punteras. Es un escenario perfecto para cerrar acuerdos, encontrar socios o iniciar colaboraciones entre empresas.', + }, + { + icon: '🚀', + title: 'VISIBILIZA TU MARCA', + desc: 'Asocia tu imagen a la innovación y el código abierto. Patrocinar la PyConES te posiciona como una empresa referente que apuesta por la tecnología y la comunidad.', + }, + { + icon: '❤️', + title: 'APOYA A LA COMUNIDAD', + desc: 'Al patrocinar, haces posible que este evento exista. Devuelves valor al ecosistema Python que tu empresa utiliza a diario y es algo que los asistentes recordarán.', + }, + { + icon: '⚖️', + title: 'IMPULSA LA DIVERSIDAD', + desc: 'Tu patrocinio ayuda a financiar becas y entradas para personas con menos recursos o colectivos poco representados. Es una forma tangible de demostrar los valores éticos de tu empresa y contribuir a que la tecnología sea más accesible para todos. Python es para todo el mundo.', + }, +] + +const testimonials = [ + { + name: 'Antoni Aloy', + role: 'Nagarro co-founder', + quote: + 'La PyconES forma parte de nuestra historia como APSL y ahora Nagarro. Hemos patrocinado y participado en este evento desde sus inicios hasta el día de hoy. Hemos conocido gente maravillosa y una comunidad abierta e integradora, en un evento hecho por y para la comunidad.', + }, + { + name: 'Nerea Luis', + role: 'Doctora en Inteligencia Artificial y Divulgadora Tecnológica', + quote: + 'Como apasionada de la IA y la divulgación, sé de primera mano que el futuro tecnológico no se escribe solo con código o con IA, sino con comunidad. La PyConES es el lugar donde ese talento se encuentra, comparte y crece. Patrocinar este evento no es solo poner un logo; es apostar y formar parte del ecosistema diverso de la conferencia que está liderando los próximos pasos del sector tecnológico. Sigamos impulsando y promoviendo que estos espacios existan para que todos nos beneficiemos del conocimiento generado.', + }, +] + +const pastSponsors = [ + { name: 'Nagarro', editions: '+3' }, + { name: 'Kraken', editions: '+3' }, + { name: 'Skydance Animation', editions: '+2' }, + { name: 'IBM', editions: '+2' }, + { name: 'Bloomberg Engineering', editions: '+2' }, + { name: 'Gisce', editions: '+2' }, + { name: 'Moeve', editions: '+2' }, + { name: 'Raiola Networks', editions: '+1' }, + { name: 'Perk', editions: '+1' }, + { name: 'Brite', editions: '+1' }, + { name: 'Inditex Tech', editions: '+1' }, + { name: 'Fever', editions: '+1' }, + { name: 'Kiwi.com', editions: '' }, + { name: 'NIQ', editions: '' }, + { name: 'Joinup', editions: '' }, + { name: 'Codurance', editions: '' }, + { name: 'Lareira Digital', editions: '' }, + { name: 'Innatial Developer', editions: '' }, + { name: 'Auth0 by Okta', editions: '' }, + { name: 'Kairos', editions: '' }, + { name: 'Gradiant', editions: '' }, + { name: 'Datamaran', editions: '' }, + { name: 'Kaleidos', editions: '' }, + { name: 'Freepik', editions: '' }, + { name: 'PWC', editions: '' }, + { name: 'Datadog', editions: '' }, + { name: 'Twilio', editions: '' }, +] + +const collaborators = ['Universitat de Barcelona', 'Python España', 'EuroPython Society', 'Python Software Foundation'] + const tiers = [ - { name: 'Bronce', price: '1.000€', limit: 'Ilimitado', color: '#d97706', bg: 'rgba(180, 83, 9, 0.1)' }, - { name: 'Plata', price: '3.000€', limit: '10 disp.', color: '#9ca3af', bg: 'rgba(107, 114, 128, 0.1)' }, - { name: 'Oro', price: '6.000€', limit: '6 disp.', color: '#facc15', bg: 'rgba(234, 179, 8, 0.1)' }, + { name: 'Bronce', emoji: '🟤', price: '1.000€', limit: 'Ilimitado', color: '#d97706', bg: 'rgba(180, 83, 9, 0.1)' }, + { name: 'Plata', emoji: '⚪', price: '3.000€', limit: '10 disp.', color: '#9ca3af', bg: 'rgba(107, 114, 128, 0.1)' }, + { name: 'Oro', emoji: '🌟', price: '6.000€', limit: '6 disp.', color: '#facc15', bg: 'rgba(234, 179, 8, 0.1)' }, { name: 'Platino', + emoji: '🏆', price: '8.000€', limit: '3 disp.', color: '#4ade80', bg: 'rgba(34, 197, 94, 0.1)', rec: true, }, - { name: 'Principal', price: 'A medida', limit: '1 disp.', color: '#c084fc', bg: 'rgba(168, 85, 247, 0.1)' }, + { + name: 'Principal', + emoji: '🏰', + price: 'Personalizado', + limit: '1 disp.', + color: '#c084fc', + bg: 'rgba(168, 85, 247, 0.1)', + }, +] + +const benefitCategories = [ + { + category: '🔢 Disponibilidad', + rows: [ + { label: 'Número límite', data: ['Ilimitado', '10', '6', '3', '1'] }, + { label: 'Papeleo extra', data: ['🚫', '🚫', '🚫', '✅', '✅'] }, + ], + }, + { + category: '🏢 Espacio en el evento', + rows: [{ label: 'Stand/booth', data: ['🚫', '🚫', 'Pequeño', 'Mediano', 'Grande'] }], + }, + { + category: '🙋🏽‍♀️ Entradas conferencia', + rows: [ + { label: 'Entradas incluidas', data: ['1', '2', '5', '12', 'Personalizado'] }, + { label: 'Acceso a cena ponentes (2p)', data: ['🚫', '🚫', '🚫', '✅', '✅'] }, + ], + }, + { + category: '🌟 Visibilidad de marca', + rows: [ + { label: 'Logo en web', data: ['Pequeño', 'Pequeño', 'Mediano', 'Grande', 'Cabecera'] }, + { label: 'Publicación en RRSS', data: ['1', '1', '2', '2', '2'] }, + { label: 'Obsequio/folleto', data: ['🚫', 'Mesa obsequios', 'Stand', 'Stand', 'Stand'] }, + { label: 'Logo en cartelería', data: ['🚫', 'Pequeño', 'Mediano', 'Grande', 'Cabecera'] }, + { label: 'Logo en comunicaciones', data: ['🚫', 'Pequeño', 'Mediano', 'Grande', 'Cabecera'] }, + { label: 'Disponibilidad add-ons', data: ['🚫', '✅', '✅', '✅', '✅'] }, + { label: 'Logo en vídeos editados', data: ['🚫', '🚫', 'Pequeño', 'Mediano', 'Grande'] }, + { label: 'Nombre/decoración en sala', data: ['🚫', '🚫', '🚫', 'Secundaria', 'Principal'] }, + { label: 'Logo en lanyards', data: ['🚫', '🚫', '🚫', '🚫', '✅'] }, + ], + }, + { + category: '📢 Contenido', + rows: [ + { label: 'Charla patrocinada', data: ['🚫', '🚫', '🚫', 'Secundaria', 'Principal'] }, + { label: 'Video promocional', data: ['🚫', '🚫', '🚫', '1 vez', '3 veces'] }, + { label: 'Intervención apertura (5 min)', data: ['🚫', '🚫', '🚫', '🚫', '✅'] }, + ], + }, + { + category: '🔎 Reclutamiento', + rows: [ + { label: 'Ofertas de trabajo en web', data: ['🚫', '1', '4', '8', '8'] }, + { label: 'Ofertas de trabajo por mail', data: ['🚫', '🚫', '🚫', 'Compartido', 'Exclusivo'] }, + ], + }, ] -const rows = [ - { label: 'Stand físico', data: ['🚫', '🚫', 'Pequeño', 'Mediano', 'Grande'] }, - { label: 'Entradas', data: ['1', '2', '5', '12', 'A medida'] }, - { label: 'Ofertas Web', data: ['-', '1', '4', '8', '8'] }, - { label: 'Mailing', data: ['-', '-', '-', 'Compartido', 'Exclusivo'] }, - { label: 'Cena Ponentes', data: ['-', '-', '-', '✅ Incluido', '✅ Incluido'] }, - { label: 'Charla', data: ['-', '-', '-', 'Secundaria', 'Principal'] }, - { label: 'Video Promo', data: ['-', '-', '-', '1 vez', '3 veces'] }, - { label: 'Logo Lanyards', data: ['-', '-', '-', '-', '✅'] }, - { label: 'Apertura Evento', data: ['-', '-', '-', '-', '✅'] }, +const benefitDetails = [ + { + title: 'Papeleo extra', + desc: 'Por defecto sólo se proporcionará una factura enviada por mail, certificado de titularidad de cuenta bancaria, y acuerdo de patrocinio. Cualquier otra gestión como darse de alta en un portal de proveedores, aportar más documentación, etc. se considerará "papeleo extra". Si tienes dudas, consúltanos.', + }, + { + title: 'Stand/booth', + desc: 'Todos los stands se situarán en la misma zona principal, en el patio de la Facultat de Matemàtiques i Informàtica, donde se encuentran las salas donde se impartirán las charlas. Los tamaños de stand son potencias de dos: el mediano es el doble que el pequeño, y el grande es el doble que el mediano. Os proporcionaremos mesas y sillas, y un par de puntos de luz. Los stands se montarán el sábado por la mañana y se desmontarán el domingo por la tarde.', + }, + { + title: 'Entradas incluidas', + desc: 'Al comprar el paquete te enviaremos un código para canjear por este número de entradas, sin coste adicional. Es muy importante que lo canjeéis antes de la fecha límite de venta de entradas, incluyendo los nombres y otros detalles de las personas que asistirán.', + }, + { + title: 'Acceso a cena de ponentes', + desc: 'Cada año celebramos una cena especial con todas las personas ponentes y la organización. Es una ocasión exclusiva para conocer mejor a las personas más activas de la comunidad. Por motivos de espacio, sólo admitimos un máximo de 2 personas por patrocinador.', + }, + { + title: 'Obsequio/folleto', + desc: 'Para evitar desperdicios, los obsequios y folletos sólo estarán en los stands y mesas de patrocinadores, no en las bolsas de bienvenida. Si no tienes derecho a stand, podrás dejar tus folletos/obsequios en una mesa compartida en la zona principal.', + }, + { + title: 'Nombre/decoración en sala', + desc: 'Tu marca en una de las salas donde se imparten las charlas. La sala llevará tu nombre, tanto en la cartelería como en la agenda. Podrás poner un rollup permanente en la misma. La sala principal es la de las keynotes y charlas plenarias.', + }, + { + title: 'Logo en lanyards', + desc: 'Consigue máxima visibilidad con tu logo en la cinta de la acreditación que llevarán colgada todas las personas asistentes.', + }, + { + title: 'Charla patrocinada', + desc: 'Una ocasión inigualable para demostrar a todo el mundo el tipo de cosas que hacéis en vuestra empresa.', + }, + { + title: 'Video promocional', + desc: 'Mostraremos tu vídeo en el espacio entre charlas, como en los cines. Máximo 3 minutos.', + }, + { + title: 'Ofertas de trabajo por mail', + desc: 'Podrás enviar tus ofertas de trabajo a todas las personas asistentes que hayan aceptado explícitamente recibirlas. Las ofertas compartidas se enviarán en un email todas juntas, y la exclusiva en un email separado.', + }, ] const addons = [ - { t: 'Evento Social', p: '3.000€', disp: '1' }, - { t: 'Cena Ponentes', p: '2.000€', disp: '2' }, - { t: 'Food Sponsor', p: '2.000€', disp: '6' }, - { t: 'Django Girls', p: '1.500€', disp: '1' }, - { t: 'ChiquiPython', p: '500€', disp: '1' }, - { t: 'Becas Diversidad', p: '300€', disp: '7' }, + { name: 'Espacio ChiquiPython', price: '500€', available: '1', desc: 'Tu marca en el espacio de conciliación (lactancia y ludoteca).' }, + { name: 'Cena ponentes y organización', price: '2.000€', available: '2', desc: 'Tu marca en la cena exclusiva para ponentes y organización. Incluye entrada para 2 personas.' }, + { name: 'Evento social', price: '3.000€', available: '1', desc: 'Tu marca en el evento social.' }, + { name: 'Food sponsor', price: '2.000€', available: '6', desc: 'Tu marca en las comidas/coffee breaks del evento.' }, + { name: 'Django Girls', price: '1.500€', available: '1', desc: 'Tu marca en el Taller Django Girls (orientado a la diversidad y principiantes).' }, + { name: 'Becas diversidad', price: '300€', available: '7', desc: 'Mención especial durante la presentación de inicio y aparición en el sitio web indicando la cantidad de becas que están auspiciando.' }, +] + +const pythonEspanaPoints = [ + { + icon: '🌍', + title: 'COMUNIDAD', + desc: 'Damos soporte legal, fiscal y de infraestructura a los grupos locales de Python en toda España (Madrid, Barcelona, Valencia, Vigo, etc.). Les ayudamos a que puedan centrarse en lo importante: compartir conocimiento.', + }, + { + icon: '📢', + title: 'EVENTOS', + desc: 'Organizamos la PyConES, el evento de referencia del sector. Pero también apoyamos otros encuentros, hackathons y talleres que mantienen la comunidad activa durante todo el año.', + }, + { + icon: '🤝', + title: 'DIVERSIDAD E INCLUSIÓN', + desc: 'Creemos que la tecnología es para todos. Destinamos una parte importante del presupuesto a becas financieras para facilitar la asistencia de grupos subrepresentados y estudiantes a nuestros eventos.', + }, + { + icon: '⚖️', + title: 'INFRAESTRUCTURA', + desc: 'Actuamos como paraguas legal para la comunidad. Gestionamos los recursos, protegemos la marca y aseguramos que haya un entorno seguro y profesional para el desarrollo de la tecnología en España.', + }, +] + +const socialLinks = [ + { icon: '🦋', label: 'Bluesky', url: 'https://bsky.app/profile/pycones.bsky.social' }, + { icon: '🐙', label: 'GitHub', url: 'https://github.com/python-spain' }, + { icon: '🐘', label: 'Mastodon', url: 'https://fosstodon.org/@pycones' }, + { icon: '💼', label: 'LinkedIn', url: 'https://www.linkedin.com/company/python-espa%C3%B1a/' }, + { icon: '📸', label: 'Instagram', url: 'https://www.instagram.com/paborrego.fotografia/' }, ] --- - +
+
- BARCELONA 2026 + BARCELONA, 6-8 NOVIEMBRE -

Patrocina la PyConES

-

Conecta con +800 expertos Python.

+

+ PyConES 2026
Oportunidades de Patrocinio +

-
-

> Nivel de Seniority

+ +
+
+

Sobre la PyConES

+

+ Sé parte de la mayor conferencia de Python de España. Organizada por la comunidad, por y para expertos/as. +

+
+
-
-
- JR 20% -
-
- SENIOR / PRO 60% + +
+

La PyConES en números

+
+ { + stats.map((stat) => ( +
+
{stat.icon}
+
{stat.value}
+
{stat.label}
+
+ )) + } +
+
+ + +
+

Alcanza tus objetivos

+
+ { + objectives.map((obj) => ( +
+
{obj.title}
+
{obj.desc}
+
+ )) + } +
+
+ + +
+

Barcelona y el evento

+ +
+
+

📍 DÓNDE: BARCELONA

+

+ Nos reuniremos en el céntrico y emblemático Edificio Histórico de la + Universidad de Barcelona. Su ciudad no es solo uno de los principales polos tecnológicos de Europa, + sino que cuenta con una comunidad local excepcional. +

+

+ La ciudad lo pone fácil: llegar a la conferencia es sencillo, moverse es rápido y hay opciones de + alojamiento de sobra cerca del evento. Y después de las charlas, nada mejor que disfrutar de Barcelona y + del mar. +

-
- EXP 20% + +
+

📅 CUÁNDO: 6-8 DE NOVIEMBRE, 2026

+
+

+ Viernes: Arrancamos con los talleres. Primera toma de contacto, buen momento + para romper el hielo. Nota: Este día no habrá zona de stands. +

+

+ Sábado: El día fuerte. Apertura del evento, Keynotes, charlas principales + y la mayor cantidad de asistentes. Por la noche: Cena Oficial de Ponentes. +

+

+ Domingo: Más charlas, "charlas relámpago" y la despedida final. +

+
-

El 80% de la audiencia son perfiles experimentados.

-
+
-

Paquetes

+ +
+
+
+

¿QUÉ ES PYCONES?

+

+ La PyConES es el evento más importante de Python en España. Es un punto de encuentro anual donde se reúne + una audiencia diversa y muy participativa: desde estudiantes y perfiles junior hasta CTOs y core developers. +

+

+ En 2026, Barcelona acogerá un programa repleto de contenido de alto nivel: talleres prácticos, más de 80 + charlas, keynotes internacionales y, sobre todo, mucha charla de pasillo. Es el lugar donde se define el + futuro de la comunidad local y nacen las próximas colaboraciones. +

+
-
- - - - +
+

¿POR QUÉ PATROCINAR?

+
{ - tiers.map((t) => ( -
+ )) } - - - + + + + + + +
+

Perfil de asistentes

+ +
+

> Nivel de Seniority

+ +
+
+ 🌱 JUNIOR 20% +
+
+ 🚀 SENIOR / PRO 60% +
+
+ 🧠 EXPERT 20% +
+
+

+ "Una audiencia madura: El 80% del contenido está enfocado a perfiles intermedio-avanzado." +

+
+ +
+ { + audienceStats.map((stat) => ( +
+
{stat.icon}
+
{stat.value}
+
{stat.label}
+
+ )) + } +
+ +
+

> Intereses

+
{ - rows.map((row) => ( -
- - {row.data.map((val, i) => ( - - ))} - + {interest.pc} + + + )) } - -
Beneficios - {t.rec && ( -
- Recomendado -
- )} -
- {t.name} + whySponsor.map((item) => ( +
+ {item.icon} +
+ {item.title}: + {item.desc}
-
{t.price}
-
{t.limit}
-
- {row.label} - ( +
+
{interest.label}
+
+
- {val} -
-
+
+
+ -
-

Extras (Add-ons)

-
+ +
+

Opiniones de patrocinadores y asistentes

+
{ - addons.map((add) => ( -
-
{add.t}
-
{add.p}
+ testimonials.map((t) => ( +
+

"{t.quote}"

+
+
+ {t.name[0]} +
+
+
{t.name}
+
{t.role}
+
+
)) }
-
+
-
- -

{SPONSORS_EMAIL}

-
+ +
+

Algunos de nuestros patrocinadores en ediciones pasadas

+
+ { + pastSponsors.map((sponsor) => ( +
+ {sponsor.name} + {sponsor.editions && {sponsor.editions}} +
+ )) + } +
+ +

Instituciones colaboradoras

+
+ { + collaborators.map((collab) => ( +
+ {collab} +
+ )) + } +
+
+ + +
+

Paquetes de patrocinio

+ +
+ + + + + { + tiers.map((t) => ( + + )) + } + + + + { + benefitCategories.map((category) => ( + <> + + + + {category.rows.map((row) => ( + + + {row.data.map((val, i) => ( + + ))} + + ))} + + )) + } + +
Beneficios + {t.rec && ( +
+ Recomendado +
+ )} +
{t.emoji}
+
+ {t.name} +
+
{t.price}
+
{t.limit}
+
+ {category.category} +
+ {row.label} + + {val} +
+
+
+ + +
+

Detalles de los beneficios

+
+ { + benefitDetails.map((detail) => ( +
+

{detail.title}

+

{detail.desc}

+
+ )) + } +
+
+ + +
+

Add-ons

+
+ { + addons.map((addon) => ( +
+
+
{addon.name}
+
{addon.price}
+
+
{addon.desc}
+
Disponibilidad: {addon.available}
+
+ )) + } +
+
+ + +
+

Sobre Python España

+
+

+ La Asociación Python España es la entidad sin ánimo de lucro que está detrás de la PyConES y que vertebra + la comunidad de Python en nuestro país. Nuestro objetivo es simple: promover el uso del lenguaje y apoyar a + las personas que lo utilizan. Somos una organización gestionada por voluntarios. Todo lo que recaudamos se + reinvierte directamente en el ecosistema. +

+
+ { + pythonEspanaPoints.map((point) => ( +
+ {point.icon} +
+ {point.title} +

{point.desc}

+
+
+ )) + } +
+
+
+ + +
+
+

¿Te apuntas?

+

+ Te lo ponemos fácil. Escríbenos contándonos qué nivel de patrocinio te interesa o qué presupuesto tenéis en + mente. Nosotros te guiaremos en el proceso, resolveremos tus dudas y veremos cómo encajar tu marca de la + mejor forma posible. +

+ +

{SPONSORS_EMAIL}

+
+
+ + +
+

Síguenos en redes

+
+ { + socialLinks.map((link) => ( + + {link.icon} + {link.label} + + )) + } +
+
From b16e09780079b5928622b313ea78c134fdd799b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20Cabello=20Jim=C3=A9nez?= Date: Thu, 22 Jan 2026 09:51:28 +0000 Subject: [PATCH 03/12] feat(sponsors): Add refined version with extra quotes --- src/pages/sponsors.astro | 35 +++++++++++++++-------------------- 1 file changed, 15 insertions(+), 20 deletions(-) diff --git a/src/pages/sponsors.astro b/src/pages/sponsors.astro index 4b82f3a..4b43525 100644 --- a/src/pages/sponsors.astro +++ b/src/pages/sponsors.astro @@ -73,6 +73,18 @@ const testimonials = [ quote: 'Como apasionada de la IA y la divulgación, sé de primera mano que el futuro tecnológico no se escribe solo con código o con IA, sino con comunidad. La PyConES es el lugar donde ese talento se encuentra, comparte y crece. Patrocinar este evento no es solo poner un logo; es apostar y formar parte del ecosistema diverso de la conferencia que está liderando los próximos pasos del sector tecnológico. Sigamos impulsando y promoviendo que estos espacios existan para que todos nos beneficiemos del conocimiento generado.', }, + { + name: 'Kraken', + role: 'Sponsor', + quote: + 'Patrocinar PyCon España ha sido una experiencia fantástica para Kraken. Nos ha permitido conectar con personas con mucho talento, compartir nuestra misión y cultura, y relacionarnos con potenciales candidatos de una forma mucho más orgánica y auténtica. Al mismo tiempo, nuestro equipo de ingeniería pudo presentar y asistir a charlas y encuentros de gran interés, sentando las bases para relaciones que creemos que perdurarán más allá del evento.', + }, + { + name: 'Pablo Galindo Salgado', + role: 'Desarrollador core de Python', + quote: + 'PyConES es el corazón de la comunidad Python en España. Un lugar donde compartir, aprender y conectar con personas apasionadas con Python. Es donde nació mi camino en open source y siempre será especial para mí. Para mí, volver siempre es volver a casa.', + }, ] const pastSponsors = [ @@ -118,7 +130,6 @@ const tiers = [ limit: '3 disp.', color: '#4ade80', bg: 'rgba(34, 197, 94, 0.1)', - rec: true, }, { name: 'Principal', @@ -508,22 +519,13 @@ const socialLinks = [ Beneficios { tiers.map((t) => ( - - {t.rec && ( -
- Recomendado -
- )} +
{t.emoji}
{t.name}
{t.price}
+
(sin IVA)
{t.limit}
)) @@ -547,12 +549,11 @@ const socialLinks = [ {row.label} - {row.data.map((val, i) => ( + {row.data.map((val) => ( CONTACTAR POR EMAIL - - DESCARGAR FORMULARIO -

{SPONSORS_EMAIL}

From 50185f229d53762471b6a863d67a6cb00686840a Mon Sep 17 00:00:00 2001 From: Dani H Date: Fri, 23 Jan 2026 10:04:59 +0100 Subject: [PATCH 04/12] Fix: remove fake button --- src/pages/sponsors.astro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/sponsors.astro b/src/pages/sponsors.astro index 4b43525..828e7a9 100644 --- a/src/pages/sponsors.astro +++ b/src/pages/sponsors.astro @@ -280,7 +280,7 @@ const socialLinks = [
- + BARCELONA, 6-8 NOVIEMBRE

From 1b73c5b31b21f82a7526b3086962073d66f77dbf Mon Sep 17 00:00:00 2001 From: Dani H Date: Fri, 23 Jan 2026 10:07:05 +0100 Subject: [PATCH 05/12] Fix: remove fake expansible --- src/pages/sponsors.astro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/sponsors.astro b/src/pages/sponsors.astro index 828e7a9..7f16b70 100644 --- a/src/pages/sponsors.astro +++ b/src/pages/sponsors.astro @@ -407,7 +407,7 @@ const socialLinks = [

Perfil de asistentes

-

> Nivel de Seniority

+

Nivel de Seniority

From 6a18ded9e788ba6c13599440244b7b16930d2cf9 Mon Sep 17 00:00:00 2001 From: Dani H Date: Fri, 23 Jan 2026 10:13:09 +0100 Subject: [PATCH 06/12] Fix: Remove fake expansible --- src/pages/sponsors.astro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/sponsors.astro b/src/pages/sponsors.astro index 7f16b70..57cc2e4 100644 --- a/src/pages/sponsors.astro +++ b/src/pages/sponsors.astro @@ -438,7 +438,7 @@ const socialLinks = [
-

> Intereses

+

Intereses

{ interests.map((interest) => ( From 3ac3cdf940fb0255af5b014ac95c4bf06c4d61a9 Mon Sep 17 00:00:00 2001 From: Dani H Date: Fri, 23 Jan 2026 10:18:24 +0100 Subject: [PATCH 07/12] Fix: remove decorative circle for sr --- src/pages/sponsors.astro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/sponsors.astro b/src/pages/sponsors.astro index 57cc2e4..511b69c 100644 --- a/src/pages/sponsors.astro +++ b/src/pages/sponsors.astro @@ -468,7 +468,7 @@ const socialLinks = [

"{t.quote}"

-
+
From d46f1a8c81cf83662001cdd0d7cfcb4cc9ec48f1 Mon Sep 17 00:00:00 2001 From: Dani H Date: Fri, 23 Jan 2026 10:19:43 +0100 Subject: [PATCH 08/12] Fix: add scope to table elements --- src/pages/sponsors.astro | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pages/sponsors.astro b/src/pages/sponsors.astro index 511b69c..0b08016 100644 --- a/src/pages/sponsors.astro +++ b/src/pages/sponsors.astro @@ -516,10 +516,10 @@ const socialLinks = [ - + { tiers.map((t) => ( - {category.rows.map((row) => ( - {row.data.map((val) => ( { tiers.map((t) => ( - )) } From 850f70441ea0b61067ee4cf9df54832e3cb6054e Mon Sep 17 00:00:00 2001 From: Dani H Date: Fri, 23 Jan 2026 10:22:55 +0100 Subject: [PATCH 10/12] Fix: replace decorative emojis by semantic value for sr --- src/pages/sponsors.astro | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/pages/sponsors.astro b/src/pages/sponsors.astro index ee8ef6a..fde93e6 100644 --- a/src/pages/sponsors.astro +++ b/src/pages/sponsors.astro @@ -563,7 +563,19 @@ const socialLinks = [ }, ]} > - {val} + {val === '✅' ? ( + <> + + Incluido + + ) : val === '🚫' ? ( + <> + + No incluido + + ) : ( + val + )} ))} From 452907a9f6b037e4316f45b8df8dd8535f9e64aa Mon Sep 17 00:00:00 2001 From: Dani H Date: Fri, 23 Jan 2026 10:25:46 +0100 Subject: [PATCH 11/12] fix: Testimonials proper semantic HTML --- src/pages/sponsors.astro | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/pages/sponsors.astro b/src/pages/sponsors.astro index fde93e6..f2d2338 100644 --- a/src/pages/sponsors.astro +++ b/src/pages/sponsors.astro @@ -465,18 +465,20 @@ const socialLinks = [
{ testimonials.map((t) => ( -
-

"{t.quote}"

-
+
+
+

"{t.quote}"

+
+
-
{t.name}
+ {t.name}
{t.role}
-
-
+ + )) }
From eb97b0d4777451b7b1f2dbffa353dada819945ec Mon Sep 17 00:00:00 2001 From: Dani H Date: Fri, 23 Jan 2026 10:29:17 +0100 Subject: [PATCH 12/12] Fix: Category rows now proper semantics --- src/pages/sponsors.astro | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/pages/sponsors.astro b/src/pages/sponsors.astro index f2d2338..1a543a8 100644 --- a/src/pages/sponsors.astro +++ b/src/pages/sponsors.astro @@ -543,12 +543,14 @@ const socialLinks = [ benefitCategories.map((category) => ( <>
- + + {category.rows.map((row) => (
BeneficiosBeneficios +
{t.emoji}
{t.name} @@ -546,9 +546,9 @@ const socialLinks = [
+ {row.label} - + Date: Fri, 23 Jan 2026 10:21:05 +0100 Subject: [PATCH 09/12] Fix: Improve screen reader experience on table headers --- src/pages/sponsors.astro | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/pages/sponsors.astro b/src/pages/sponsors.astro index 0b08016..ee8ef6a 100644 --- a/src/pages/sponsors.astro +++ b/src/pages/sponsors.astro @@ -519,14 +519,18 @@ const socialLinks = [ Beneficios -
{t.emoji}
-
+
+ + -
{t.price}
-
(sin IVA)
-
{t.limit}
+ + +
- {category.category} -