From b257f643edc0b5180839835c2af6293de78fa508 Mon Sep 17 00:00:00 2001 From: Francesc Arpi Roca Date: Wed, 1 Apr 2026 09:39:49 +0200 Subject: [PATCH 1/3] =?UTF-8?q?feat:=20agrega=20secci=C3=B3n=20Call=20for?= =?UTF-8?q?=20Proposals=20en=20home?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Crea SectionCallForProposals.astro con diseño consistente usando bg-white/5 backdrop-blur-md - Integra nueva sección entre SectionMain y SectionSponsors en home - Agrega traducciones i18n para es, en y ca con texto del CFP y fecha límite - Corrige tipografía del Button.astro para usar font heredada del sitio - Enlaza a https://pretalx.com/pycones-2026/cfp con apertura en nueva pestaña - Fecha límite: 3 de mayo 23:59h (hora peninsular) --- src/components/Button.astro | 2 +- .../home/SectionCallForProposals.astro | 34 +++++++++++++++++++ src/components/index.astro | 2 ++ src/i18n/home.ts | 12 +++++++ 4 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 src/components/home/SectionCallForProposals.astro diff --git a/src/components/Button.astro b/src/components/Button.astro index ed423ac..512065b 100644 --- a/src/components/Button.astro +++ b/src/components/Button.astro @@ -24,7 +24,7 @@ const sizes = { } const baseClasses = - "inline-flex items-center justify-center font-['Outfit'] font-medium rounded-lg text-center transition-colors duration-200 cursor-pointer" + "inline-flex items-center justify-center font-medium rounded-lg text-center transition-colors duration-200 cursor-pointer" const Element = href ? 'a' : 'button' --- diff --git a/src/components/home/SectionCallForProposals.astro b/src/components/home/SectionCallForProposals.astro new file mode 100644 index 0000000..eb4daa5 --- /dev/null +++ b/src/components/home/SectionCallForProposals.astro @@ -0,0 +1,34 @@ +--- +import { texts } from '../../i18n/home' +import SectionTitle from '../SectionTitle.astro' +import Button from '../Button.astro' + +interface Props { + lang: string +} + +const { lang } = Astro.props +const t = texts[lang as keyof typeof texts] +--- + +
+ + +
+

+ {t['cfp.description']} +

+ +
+ +
+
+
\ No newline at end of file diff --git a/src/components/index.astro b/src/components/index.astro index f3ece26..1f5b989 100644 --- a/src/components/index.astro +++ b/src/components/index.astro @@ -1,6 +1,7 @@ --- import Layout from '@/layouts/Layout.astro' import SectionMain from './home/SectionMain.astro' +import SectionCallForProposals from './home/SectionCallForProposals.astro' import SectionSponsors from './home/SectionSponsors.astro' interface Props { @@ -13,6 +14,7 @@ const { lang } = Astro.props
+
diff --git a/src/i18n/home.ts b/src/i18n/home.ts index 3ad2135..69ab7ff 100644 --- a/src/i18n/home.ts +++ b/src/i18n/home.ts @@ -14,6 +14,10 @@ export const texts = { 'sponsors.bronze': 'Patrocinador Bronce', 'sponsors.none': 'No hay patrocinadores en este nivel', 'sponsors.altlogo': 'Logo de {name}', + 'cfp.title': 'Call for Proposals', + 'cfp.description': + '¡Ya está abierta la llamada a propuestas! Mándanos tu charla o taller antes del 3 de mayo a las 23:59h (hora peninsular). Si te estás preguntando si puedes hacer esto, la respuesta es que sí. Si tienes un tema que te interesa, ¡nos interesa!', + 'cfp.button': 'Envía tu propuesta', }, en: { 'index.initializing': 'Initialising system...', @@ -30,6 +34,10 @@ export const texts = { 'sponsors.bronze': 'Bronze Sponsor', 'sponsors.none': 'No sponsors in this tier', 'sponsors.altlogo': '{name} logo', + 'cfp.title': 'Call for Proposals', + 'cfp.description': + "The call for proposals is now open! Send us your talk or workshop before May 3rd at 23:59 (CET). If you're wondering whether you can do this, the answer is yes. If you have a topic that interests you, it interests us!", + 'cfp.button': 'Submit your proposal', }, ca: { 'index.initializing': 'Inicialitzant sistema...', @@ -46,5 +54,9 @@ export const texts = { 'sponsors.bronze': 'Patrocinador Bronze', 'sponsors.none': 'No hi ha patrocinadors en aquest nivell', 'sponsors.altlogo': 'Logo de {name}', + 'cfp.title': 'Call for Proposals', + 'cfp.description': + "Ja està oberta la crida a propostes! Envia'ns la teva xerrada o taller abans del 3 de maig a les 23:59h (hora peninsular). Si t'estàs preguntant si pots fer això, la resposta és que sí. Si tens un tema que t'interessa, ens interessa!", + 'cfp.button': 'Envia la teva proposta', }, } as const From 8d0b4387d01a5bb05c83b3abf5824d9bcf6c44fe Mon Sep 17 00:00:00 2001 From: Francesc Arpi Roca Date: Wed, 1 Apr 2026 09:42:33 +0200 Subject: [PATCH 2/3] fix: format --- src/components/Button.astro | 2 +- .../home/SectionCallForProposals.astro | 16 +++++++++------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/components/Button.astro b/src/components/Button.astro index 512065b..78e500d 100644 --- a/src/components/Button.astro +++ b/src/components/Button.astro @@ -24,7 +24,7 @@ const sizes = { } const baseClasses = - "inline-flex items-center justify-center font-medium rounded-lg text-center transition-colors duration-200 cursor-pointer" + 'inline-flex items-center justify-center font-medium rounded-lg text-center transition-colors duration-200 cursor-pointer' const Element = href ? 'a' : 'button' --- diff --git a/src/components/home/SectionCallForProposals.astro b/src/components/home/SectionCallForProposals.astro index eb4daa5..21d6423 100644 --- a/src/components/home/SectionCallForProposals.astro +++ b/src/components/home/SectionCallForProposals.astro @@ -13,16 +13,18 @@ const t = texts[lang as keyof typeof texts]
- -
+ +

{t['cfp.description']}

- +
-
-
\ No newline at end of file +
From bf0a459f869a23185adf4d3e391fba2df5b3c751 Mon Sep 17 00:00:00 2001 From: Francesc Arpi Roca Date: Wed, 1 Apr 2026 09:47:47 +0200 Subject: [PATCH 3/3] =?UTF-8?q?fix:=20traduce=20t=C3=ADtulo=20CFP=20al=20e?= =?UTF-8?q?spa=C3=B1ol=20y=20catal=C3=A1n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Español: 'Call for Proposals' → 'Llamada a Propuestas' - Catalán: 'Call for Proposals' → 'Crida a Propostes' - Inglés: mantiene 'Call for Proposals' (original) --- src/i18n/home.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/i18n/home.ts b/src/i18n/home.ts index 69ab7ff..ff5a2a0 100644 --- a/src/i18n/home.ts +++ b/src/i18n/home.ts @@ -14,7 +14,7 @@ export const texts = { 'sponsors.bronze': 'Patrocinador Bronce', 'sponsors.none': 'No hay patrocinadores en este nivel', 'sponsors.altlogo': 'Logo de {name}', - 'cfp.title': 'Call for Proposals', + 'cfp.title': 'Llamada a Propuestas', 'cfp.description': '¡Ya está abierta la llamada a propuestas! Mándanos tu charla o taller antes del 3 de mayo a las 23:59h (hora peninsular). Si te estás preguntando si puedes hacer esto, la respuesta es que sí. Si tienes un tema que te interesa, ¡nos interesa!', 'cfp.button': 'Envía tu propuesta', @@ -54,7 +54,7 @@ export const texts = { 'sponsors.bronze': 'Patrocinador Bronze', 'sponsors.none': 'No hi ha patrocinadors en aquest nivell', 'sponsors.altlogo': 'Logo de {name}', - 'cfp.title': 'Call for Proposals', + 'cfp.title': 'Crida a Propostes', 'cfp.description': "Ja està oberta la crida a propostes! Envia'ns la teva xerrada o taller abans del 3 de maig a les 23:59h (hora peninsular). Si t'estàs preguntant si pots fer això, la resposta és que sí. Si tens un tema que t'interessa, ens interessa!", 'cfp.button': 'Envia la teva proposta',