Skip to content

Commit cd2567a

Browse files
author
pixelead0
committed
fix: template de meetup de charla única ahora es idéntico al ejemplo manual, sin frontmatter, rutas absolutas y bloques fieles al diseño
1 parent 858a585 commit cd2567a

File tree

1 file changed

+67
-84
lines changed

1 file changed

+67
-84
lines changed

scripts/templates/meetup-template.md.j2

Lines changed: 67 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -1,63 +1,61 @@
11
---
22
title: "{{ event_title }}"
3-
tags:
4-
{% for tag in tags %}
5-
- {{ tag.name }}
6-
{% endfor %}
73
---
84

95
# Meetup #PythonCDMX <i class="fab fa-python"></i> - {{ event_month_year }}
106

11-
<div class="event-highlight" style="background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 2rem; border-radius: 16px; margin: 2rem 0; text-align: center; box-shadow: 0 8px 32px rgba(102, 126, 234, 0.3);">
12-
<h2 style="margin: 0 0 1rem 0; font-size: 2.5rem;">{{ event_title }}</h2>
13-
<p style="font-size: 1.2rem; margin: 0; opacity: 0.9;">{{ event_subtitle }}</p>
14-
</div>
15-
16-
<div class="meetup-header" style="text-align: center; margin-bottom: 2rem;">
17-
<img src="/../../{{ event_banner_image | replace('/images/', 'images/') }}" alt="Banner del evento" style="max-width: 100%; border-radius: 12px; box-shadow: 0 4px 20px rgba(0,0,0,0.1);">
7+
<div class="meetup-hero">
8+
<h1>✨ {{ event_title }} ✨</h1>
9+
<p class="meetup-subtitle">{{ event_subtitle if event_subtitle else 'Descubre las mejores prácticas para configurar tu entorno de desarrollo Python' }}</p>
1810
</div>
1911

2012
## Información del Evento
2113

22-
<div class="event-details" style="display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1.5rem; margin: 2rem 0;">
23-
<div class="detail-card" style="background: #f8f9fa; padding: 1.5rem; border-radius: 12px; border-left: 4px solid #28a745; box-shadow: 0 2px 8px rgba(0,0,0,0.1);">
24-
<h3 style="margin: 0 0 0.5rem 0; color: #28a745;"><i class="fas fa-calendar"></i> Fecha</h3>
25-
<p style="margin: 0; font-size: 1.1rem; font-weight: 600;">{{ event_date }}</p>
14+
<div class="event-details">
15+
<div class="detail-card date-card">
16+
<h3><i class="fas fa-calendar-alt"></i> Fecha</h3>
17+
<p>{{ event_date }}</p>
2618
</div>
27-
<div class="detail-card" style="background: #f8f9fa; padding: 1.5rem; border-radius: 12px; border-left: 4px solid #007bff; box-shadow: 0 2px 8px rgba(0,0,0,0.1);">
28-
<h3 style="margin: 0 0 0.5rem 0; color: #007bff;"><i class="fas fa-clock"></i> Hora</h3>
29-
<p style="margin: 0; font-size: 1.1rem; font-weight: 600;">{{ event_time }}</p>
19+
<div class="detail-card time-card">
20+
<h3><i class="fas fa-clock"></i> Hora</h3>
21+
<p>{{ event_time }}</p>
3022
</div>
31-
<div class="detail-card" style="background: #f8f9fa; padding: 1.5rem; border-radius: 12px; border-left: 4px solid #dc3545; box-shadow: 0 2px 8px rgba(0,0,0,0.1);">
32-
<h3 style="margin: 0 0 0.5rem 0; color: #dc3545;"><i class="fas fa-map-marker-alt"></i> Lugar</h3>
33-
<p style="margin: 0; font-size: 1.1rem; font-weight: 600;">{{ event_location }}</p>
23+
<div class="detail-card location-card">
24+
<h3><i class="fas fa-map-marker-alt"></i> Lugar</h3>
25+
<p>{{ event_location }}</p>
3426
</div>
35-
<div class="detail-card" style="background: linear-gradient(135deg, #28a745 0%, #20c997 100%); color: white; padding: 1.5rem; border-radius: 12px; border-left: 4px solid #28a745; box-shadow: 0 4px 16px rgba(40, 167, 69, 0.3);">
36-
<h3 style="margin: 0 0 0.5rem 0; color: white;"><i class="fas fa-gift"></i> ¡GRATIS!</h3>
37-
<p style="margin: 0; font-size: 1.1rem; font-weight: 600;">Entrada completamente gratuita</p>
27+
<div class="detail-card free-card">
28+
<h3><i class="fas fa-gift"></i> ¡GRATIS!</h3>
29+
<p>Entrada completamente gratuita</p>
3830
</div>
39-
<div class="detail-card" style="background: #f8f9fa; padding: 1.5rem; border-radius: 12px; border-left: 4px solid #ffc107; box-shadow: 0 2px 8px rgba(0,0,0,0.1);">
40-
<h3 style="margin: 0 0 0.5rem 0; color: #ffc107;"><i class="fas fa-ticket-alt"></i> RSVP</h3>
41-
<p style="margin: 0; font-size: 1.1rem; font-weight: 600;"><a href="{{ event_rsvp_link }}" style="color: #ffc107; text-decoration: none;">¡Regístrate aquí!</a></p>
31+
<div class="detail-card rsvp-card">
32+
<h3><i class="fas fa-ticket-alt"></i> RSVP</h3>
33+
<p><a href="{{ event_rsvp_link }}" style="color: #ffc107; text-decoration: none;">¡Regístrate aquí!</a></p>
4234
</div>
4335
</div>
4436

4537
---
4638

47-
## <i class="fas fa-microphone"></i> Ponente
39+
## Ponente
4840

49-
<div class="speaker-section" style="background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 2rem; border-radius: 16px; margin: 2rem 0; display: flex; align-items: center; gap: 2rem; box-shadow: 0 8px 32px rgba(102, 126, 234, 0.3);">
50-
<div class="speaker-photo" style="flex-shrink: 0;">
51-
<img src="/../../{{ speaker.photo | replace('/images/', 'images/') }}" alt="{{ speaker.name }}" style="width: 150px; height: 150px; border-radius: 50%; border: 4px solid white; box-shadow: 0 4px 16px rgba(0,0,0,0.2); object-fit: cover;">
41+
<div class="speaker-section">
42+
<div class="speaker-photo">
43+
<img src="/../../images/ponentes/{{ speaker.photo.split('/')[-1] }}" alt="{{ speaker.name }}">
5244
</div>
5345
<div class="speaker-info">
54-
<h2 style="margin: 0 0 0.5rem 0; font-size: 2rem;">{{ speaker.name }}</h2>
55-
<p style="margin: 0 0 1rem 0; font-size: 1.1rem; opacity: 0.9;">{{ speaker.title }}</p>
56-
<p style="margin: 0 0 1rem 0; line-height: 1.6;">{{ speaker.bio }}</p>
46+
<h2>{{ speaker.name }}</h2>
47+
<p class="speaker-role">{{ speaker.title }}</p>
48+
<p class="speaker-bio">{{ speaker.bio }}</p>
5749
<div class="speaker-links">
58-
{% if speaker.linkedin %}<a href="{{ speaker.linkedin }}" style="background: white; color: #667eea; padding: 0.5rem 1rem; border-radius: 25px; text-decoration: none; font-weight: 600; display: inline-block; margin-right: 1rem; transition: all 0.3s ease;"><i class="fab fa-linkedin"></i> LinkedIn</a>{% endif %}
59-
{% if speaker.github %}<a href="{{ speaker.github }}" style="background: white; color: #667eea; padding: 0.5rem 1rem; border-radius: 25px; text-decoration: none; font-weight: 600; display: inline-block; margin-right: 1rem; transition: all 0.3s ease;"><i class="fab fa-github"></i> GitHub</a>{% endif %}
60-
{% if speaker.twitter %}<a href="{{ speaker.twitter }}" style="background: white; color: #667eea; padding: 0.5rem 1rem; border-radius: 25px; text-decoration: none; font-weight: 600; display: inline-block; margin-right: 1rem; transition: all 0.3s ease;"><i class="fab fa-twitter"></i> Twitter</a>{% endif %}
50+
{% if speaker.linkedin %}
51+
<a href="{{ speaker.linkedin }}"><i class="fab fa-linkedin"></i></a>
52+
{% endif %}
53+
{% if speaker.github %}
54+
<a href="{{ speaker.github }}"><i class="fab fa-github"></i></a>
55+
{% endif %}
56+
{% if speaker.twitter %}
57+
<a href="{{ speaker.twitter }}"><i class="fab fa-twitter"></i></a>
58+
{% endif %}
6159
</div>
6260
</div>
6361
</div>
@@ -66,79 +64,64 @@ tags:
6664

6765
## Descripción de la Charla
6866

69-
<div class="talk-description" style="background: #f8f9fa; padding: 2rem; border-radius: 16px; margin: 2rem 0; border-left: 6px solid #28a745;">
70-
<h3 style="margin: 0 0 1rem 0; color: #28a745;"><i class="fas fa-rocket"></i> {{ talk.title }}</h3>
71-
<p style="line-height: 1.8; font-size: 1.1rem; margin-bottom: 1.5rem;">{{ talk.description }}</p>
72-
<div class="tech-stack" style="display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1rem; margin: 1.5rem 0;">
73-
{% for tech in talk.tech_stack %}
74-
<div style="background: white; padding: 1rem; border-radius: 8px; text-align: center; box-shadow: 0 2px 4px rgba(0,0,0,0.1);">
75-
<h4 style="margin: 0 0 0.5rem 0; color: {{ tech.color }};">{{ tech.icon | safe }} {{ tech.name }}</h4>
76-
<p style="margin: 0; font-size: 0.9rem;">{{ tech.description }}</p>
77-
</div>
67+
<div class="talk-description">
68+
<h3><i class="fas fa-rocket"></i> {{ talk.title }}</h3>
69+
<p>¿Tienes esa gran idea, pero no sabes cómo organizar tu ambiente virtual, tu código y todas las herramientas de desarrollo?</p>
70+
<p>En esta charla exploraremos las mejores prácticas para configurar un entorno de desarrollo Python profesional:</p>
71+
<ul style="line-height: 1.8; font-size: 1.1rem; margin: 1.5rem 0; padding-left: 2rem;">
72+
{% for line in talk.description.split('\n') if line.startswith('-') %}
73+
<li>{{ line[1:].strip() }}</li>
7874
{% endfor %}
79-
</div>
80-
<p style="line-height: 1.8; font-size: 1.1rem; margin-top: 1.5rem;">{{ talk.conclusion }}</p>
75+
</ul>
76+
<p style="line-height: 1.8; font-size: 1.1rem; margin-top: 1.5rem; font-style: italic; color: #666;">
77+
<i class="fas fa-info-circle"></i> {{ talk.conclusion }}
78+
</p>
8179
</div>
8280

8381
---
8482

85-
{% if video and video.youtube_id %}
86-
## Video del Meetup
87-
<div class="video-section" style="text-align: center; margin: 2rem 0;">
88-
<div style="background: #f8f9fa; padding: 2rem; border-radius: 16px; box-shadow: 0 4px 16px rgba(0,0,0,0.1);">
89-
<h3 style="margin: 0 0 1rem 0; color: #dc3545;"><i class="fas fa-tv"></i> ¡Mira la charla completa!</h3>
90-
<div style="position: relative; padding-bottom: 56.25%; height: 0; margin-bottom: 1rem;">
83+
## ¡Mira la charla completa!
84+
85+
<div class="video-section">
86+
<div class="video-container">
87+
<div class="video-wrapper">
9188
<iframe
9289
src="https://www.youtube.com/embed/{{ video.youtube_id }}"
9390
title="Meetup PythonCDMX {{ event_month_year }}"
94-
style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 12px;"
9591
frameborder="0"
9692
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
9793
allowfullscreen>
98-
</iframe>
94+
></iframe>
9995
</div>
100-
<a href="{{ video.youtube_url }}" style="background: #dc3545; color: white; padding: 0.75rem 1.5rem; border-radius: 25px; text-decoration: none; font-weight: 600; display: inline-block; transition: all 0.3s ease;"><i class="fab fa-youtube"></i> Ver en YouTube</a>
101-
</div>
102-
</div>
103-
---
104-
{% endif %}
105-
106-
## Temas y Tecnologías
107-
<div class="tags-section" style="margin: 2rem 0;">
108-
<div style="display: flex; flex-wrap: wrap; gap: 0.5rem; justify-content: center;">
109-
{% for tag in tags %}
110-
<a href="/tags/{{ tag.name | lower | replace(' ', '-') }}/" style="background: {{ tag.color }}; color: white; padding: 0.5rem 1rem; border-radius: 20px; font-weight: 600; text-decoration: none; transition: all 0.3s ease;">{{ tag.icon | safe }} {{ tag.name }}</a>
111-
{% endfor %}
96+
<a href="{{ video.youtube_url }}" class="youtube-btn">
97+
<i class="fab fa-youtube"></i> Ver en YouTube
98+
</a>
11299
</div>
113100
</div>
114101

115102
---
116103

117-
## Networking
118-
<div class="networking-section" style="background: linear-gradient(135deg, #28a745 0%, #20c997 100%); color: white; padding: 2rem; border-radius: 16px; margin: 2rem 0; text-align: center; box-shadow: 0 8px 32px rgba(40, 167, 69, 0.3);">
119-
<h3 style="margin: 0 0 1rem 0; font-size: 1.5rem;"><i class="fas fa-comments"></i> ¡Conecta con la comunidad!</h3>
120-
<p style="margin: 0; font-size: 1.1rem; line-height: 1.6;">
121-
Después de la charla habrá un tiempo de networking donde podrás platicar con programadores de diferentes niveles e intereses.
122-
¡Es la oportunidad perfecta para hacer conexiones profesionales y aprender de otros desarrolladores!
123-
</p>
124-
</div>
125-
126-
---
104+
### Unete a #PythonCDMX
127105

128-
## Enlaces de la Comunidad
129-
<div class="community-links" style="display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1rem; margin: 2rem 0;">
130-
<a href="https://t.me/PythonCDMX" style="background: #0088cc; color: white; padding: 1rem; border-radius: 12px; text-decoration: none; text-align: center; font-weight: 600; transition: all 0.3s ease; display: flex; align-items: center; justify-content: center; gap: 0.5rem;">
106+
<div class="community-links">
107+
<a href="https://t.me/PythonCDMX" class="community-link telegram">
131108
<i class="fab fa-telegram"></i> Telegram
132109
</a>
133-
<a href="https://www.meetup.com/python-mexico" style="background: #e51937; color: white; padding: 1rem; border-radius: 12px; text-decoration: none; text-align: center; font-weight: 600; transition: all 0.3s ease; display: flex; align-items: center; justify-content: center; gap: 0.5rem;">
110+
<a href="https://www.meetup.com/python-mexico" class="community-link meetup">
134111
<i class="fab fa-meetup"></i> Meetup
135112
</a>
136-
<a href="https://www.youtube.com/@PythonMexico" style="background: #ff0000; color: white; padding: 1rem; border-radius: 12px; text-decoration: none; text-align: center; font-weight: 600; transition: all 0.3s ease; display: flex; align-items: center; justify-content: center; gap: 0.5rem;">
113+
<a href="https://www.youtube.com/@PythonMexico" class="community-link youtube">
137114
<i class="fab fa-youtube"></i> YouTube
138115
</a>
139-
<a href="https://github.com/PythonMexico/pythonCDMX" style="background: #333; color: white; padding: 1rem; border-radius: 12px; text-decoration: none; text-align: center; font-weight: 600; transition: all 0.3s ease; display: flex; align-items: center; justify-content: center; gap: 0.5rem;">
116+
<a href="https://github.com/PythonMexico/pythonCDMX" class="community-link github">
140117
<i class="fab fa-github"></i> GitHub
141118
</a>
119+
<a href="https://www.instagram.com/pythoncdmx" class="community-link instagram">
120+
<i class="fab fa-instagram"></i> Instagram
121+
</a>
122+
<a href="https://www.linkedin.com/company/pythoncdmx" class="community-link linkedin">
123+
<i class="fab fa-linkedin"></i> LinkedIn
124+
</a>
142125
</div>
143126

144127
---

0 commit comments

Comments
 (0)