Skip to content

Commit 52b7849

Browse files
authored
Merge pull request #298 from neural-loop/main
Improve Social media images
2 parents b0b4171 + 544c48b commit 52b7849

File tree

4 files changed

+94
-43
lines changed

4 files changed

+94
-43
lines changed

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ Thumbs.db
77
npm-debug.log
88
node_modules
99
builds
10-
package-lock.json
1110
public
1211
resources
1312
.hugo_build.lock

assets/og-template/event-template.html

Lines changed: 91 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
display: flex;
2828
flex-direction: column;
2929
box-sizing: border-box;
30-
padding: 5vmin;
30+
padding: 4vmin;
3131
}
3232
.background {
3333
position: absolute;
@@ -44,16 +44,16 @@
4444
align-items: center;
4545
justify-content: center;
4646
flex-shrink: 0;
47-
margin-bottom: 4vmin;
47+
margin-bottom: 2.5vmin;
4848
}
4949
.logo {
50-
height: 12vmin;
50+
height: 10vmin;
5151
width: auto;
52-
margin-right: 3vmin;
52+
margin-right: 2.5vmin;
5353
}
5454
.logo-text {
5555
font-family: "Inter", sans-serif;
56-
font-size: 6vmin;
56+
font-size: 5vmin;
5757
line-height: 1.1;
5858
font-weight: 800;
5959
color: #1f2937;
@@ -62,32 +62,41 @@
6262
flex-grow: 1;
6363
display: flex;
6464
flex-direction: column;
65-
justify-content: center;
65+
justify-content: space-around;
6666
text-align: center;
67+
gap: 2vmin;
6768
}
6869
.title {
69-
font-size: clamp(30px, 6.2vmin, 62px);
7070
font-weight: 800;
7171
line-height: 1.2;
7272
color: #1f2937;
73-
margin: 0 0 4vmin 0;
73+
margin: 0;
7474
display: -webkit-box;
75-
-webkit-line-clamp: 5;
75+
-webkit-line-clamp: 4; /* More room for long titles */
7676
-webkit-box-orient: vertical;
7777
overflow: hidden;
7878
}
79+
.description {
80+
line-height: 1.4;
81+
color: #4b5563;
82+
margin: 0;
83+
display: -webkit-box;
84+
-webkit-line-clamp: 6; /* Allow more lines for description */
85+
-webkit-box-orient: vertical;
86+
overflow: hidden;
87+
word-wrap: break-word;
88+
}
7989
.speakers {
80-
margin-bottom: 4vmin;
8190
display: flex;
8291
justify-content: center;
8392
align-items: center;
84-
min-height: 28vmin;
93+
min-height: 45vmin; /* Adjusted to give text more space */
8594
}
8695
.speakers-container {
8796
display: flex;
8897
justify-content: center;
8998
align-items: flex-start;
90-
gap: 2.5vmin;
99+
gap: 2vmin;
91100
flex-wrap: wrap;
92101
max-width: 95%;
93102
}
@@ -100,36 +109,39 @@
100109
.speaker-img {
101110
border-radius: 50%;
102111
object-fit: cover;
103-
border: 0.8vmin solid white;
112+
border: 0.7vmin solid white;
104113
box-shadow: 0 0.5vmin 1.5vmin rgba(0,0,0,0.15);
105114
flex-shrink: 0;
106115
}
107116
.speaker-name {
108-
font-size: clamp(18px, 3.2vmin, 28px);
109117
font-weight: 500;
110118
color: #374151;
111119
line-height: 1.2;
112120
max-width: 100%;
113121
word-wrap: break-word;
114122
}
115123
.event-details {
116-
font-size: clamp(28px, 5.5vmin, 55px);
124+
font-size: clamp(24px, 4.5vmin, 45px); /* Default size */
117125
line-height: 1.4;
118126
color: #4b5563;
119127
margin: 0;
120128
font-weight: 500;
129+
text-shadow:
130+
-2px -2px 6px white, 2px -2px 6px white,
131+
-2px 2px 6px white, 2px 2px 6px white,
132+
0 0 15px white, 0 0 25px white, 0 0 35px white;
121133
}
122134
.event-date {
123135
font-weight: 700;
124136
color: #667eea;
125137
}
126138
.footer {
127-
font-size: clamp(20px, 4vmin, 40px);
139+
font-size: clamp(18px, 3.5vmin, 35px);
128140
font-weight: 500;
129141
color: #667eea;
130142
text-align: center;
131143
flex-shrink: 0;
132-
margin-top: 4vmin;
144+
margin-top: 2.5vmin;
133145
}
134146
</style>
135147
</head>
@@ -142,6 +154,7 @@
142154
</div>
143155
<div class="main-content">
144156
<h1 class="title">PAGE_TITLE</h1>
157+
<p class="description">PAGE_DESCRIPTION</p>
145158
<div class="speakers">
146159
<div class="speakers-container">
147160
<!-- SPEAKER_IMAGES_HTML will be injected here -->
@@ -158,36 +171,74 @@ <h1 class="title">PAGE_TITLE</h1>
158171
<script>
159172
document.addEventListener('DOMContentLoaded', () => {
160173
const speakerContainer = document.querySelector('.speakers-container');
161-
if (!speakerContainer) return;
174+
const descriptionEl = document.querySelector('.description');
175+
const titleEl = document.querySelector('.title');
176+
const eventDetailsEl = document.querySelector('.event-details');
177+
178+
if (!speakerContainer || !titleEl) return;
162179
const speakerItems = speakerContainer.querySelectorAll('.speaker-item');
163180
const speakerCount = speakerItems.length;
164181

165-
if (speakerCount === 0) return;
182+
// Logic for description visibility
183+
if (descriptionEl) {
184+
if (!descriptionEl.textContent || descriptionEl.textContent.trim() === '') {
185+
descriptionEl.style.display = 'none';
186+
}
187+
}
188+
189+
if (speakerCount >= 1 && speakerCount <= 6) {
190+
// Larger sizes for 1-6 speakers
191+
titleEl.style.fontSize = 'clamp(32px, 6.0vmin, 60px)';
192+
if (descriptionEl) descriptionEl.style.fontSize = 'clamp(22px, 4.3vmin, 42px)';
193+
// Reduced date/time size to give more room to description
194+
if (eventDetailsEl) eventDetailsEl.style.fontSize = 'clamp(32px, 5.5vmin, 55px)';
195+
196+
let imgSize = '27vmin'; // Default for 4-6 speakers
197+
let nameSize = 'clamp(20px, 3.5vmin, 32px)';
166198

167-
let size = '22vmin';
199+
if (speakerCount === 1) { imgSize = '51vmin'; }
200+
else if (speakerCount === 2) { imgSize = '37vmin'; }
201+
else if (speakerCount === 3) { imgSize = '32vmin'; }
168202

169-
if (speakerCount === 1) {
170-
size = '42vmin';
171-
} else if (speakerCount === 2) {
172-
size = '32vmin';
173-
} else if (speakerCount === 3) {
174-
size = '27vmin';
175-
} else if (speakerCount >= 4 && speakerCount <= 6) {
176-
size = '24vmin';
177-
} else if (speakerCount > 6) {
178-
size = '20vmin';
179-
}
203+
speakerItems.forEach(item => {
204+
item.style.width = imgSize;
205+
const img = item.querySelector('.speaker-img');
206+
const name = item.querySelector('.speaker-name');
207+
if (img) {
208+
img.style.width = imgSize;
209+
img.style.height = imgSize;
210+
}
211+
if (name) {
212+
name.style.fontSize = nameSize;
213+
}
214+
});
215+
} else { // 0 or 7+ speakers
216+
// Smaller sizes for 7+ speakers
217+
titleEl.style.fontSize = 'clamp(28px, 5.5vmin, 55px)';
218+
if (descriptionEl) descriptionEl.style.fontSize = 'clamp(28px, 5.2vmin, 52px)';
219+
220+
let imgSize = '18vmin';
221+
let nameSize = 'clamp(16px, 2.8vmin, 26px)';
222+
if (speakerCount > 8) {
223+
imgSize = '16vmin';
224+
nameSize = 'clamp(14px, 2.5vmin, 24px)';
225+
}
180226

181-
speakerItems.forEach(item => {
182-
item.style.width = size;
183-
const img = item.querySelector('.speaker-img');
184-
if (img) {
185-
img.style.width = size;
186-
img.style.height = size;
187-
}
188-
});
227+
speakerItems.forEach(item => {
228+
item.style.width = imgSize;
229+
const img = item.querySelector('.speaker-img');
230+
const name = item.querySelector('.speaker-name');
231+
if (img) {
232+
img.style.width = imgSize;
233+
img.style.height = imgSize;
234+
}
235+
if (name) {
236+
name.style.fontSize = nameSize;
237+
}
238+
});
239+
}
189240
});
190241
</script>
191242

192243
</body>
193-
</html>
244+
</html>

content/neuromorphic-computing/student-talks/learning-long-sequences-in-snns/index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
---
2-
title: "Student Talk: Learning Long Sequences in Spiking Neural Networks with Matei Stan"
2+
title: "Learning Long Sequences in Spiking Neural Networks with Matei Stan"
33
author:
44
- "Matei Stan"
55
date: 2025-07-27
66
start_time: "08:30"
77
end_time: "09:45"
88
time_zone: "EST"
9-
description: "Explore how State Space Models (SSMs) combined with Spiking Neural Networks (SNNs) can outperform Transformers on long-sequence tasks, and learn about a novel feature mixing layer that challenges assumptions about binary activations."
9+
description: "Explore how State Space Models (SSMs) combined with Spiking Neural Networks (SNNs) can outperform Transformers on long-sequence tasks, and a novel feature mixing layer that challenges assumptions about binary activations."
1010
upcoming: true
1111
upcoming_url: "https://teams.microsoft.com/l/meetup-join/19%3Ameeting_OTBkNTY5MjgtMjE3Ni00OTFmLWEwNzktN2QwZTU1NWIxNDc2%40thread.v2/0?context=%7B%22Tid%22%3A%22c152cb07-614e-4abb-818a-f035cfa91a77%22%2C%22Oid%22%3A%223f444780-d657-4917-993e-0f42adeff90e%22%7D"
1212
video: ""

scripts/generateOgImages.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,7 @@ async function generateImages() {
150150
.replace('LOGO_SRC', jsonData.logoDataUri)
151151
.replace('BACKGROUND_URL', jsonData.backgroundDataUri || '')
152152
.replace('PAGE_TITLE', title)
153+
.replace('PAGE_DESCRIPTION', description || '')
153154
.replace('<!-- SPEAKER_IMAGES_HTML will be injected here -->', `<div class="speakers-container">${speakersHtml}</div>`)
154155
.replace('EVENT_DATE', eventDate || '')
155156
.replace('EVENT_TIME', eventTime || '');

0 commit comments

Comments
 (0)