Skip to content

Commit 21a34ac

Browse files
authored
Add additional talks and fix the order (#92)
* Enhance community events documentation by adding new sessions for upcoming conferences. Signed-off-by: Pete Cheslock <[email protected]> * Add new sessions for upcoming conferences and implement session sorting logic in community events documentation. Signed-off-by: Pete Cheslock <[email protected]> --------- Signed-off-by: Pete Cheslock <[email protected]>
1 parent 7eed542 commit 21a34ac

File tree

1 file changed

+41
-1
lines changed

1 file changed

+41
-1
lines changed

docs/community/events.md

Lines changed: 41 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,18 @@ Stay connected with the llm-d community at meetups, conferences, and workshops.
8989
location: 'Building B | Level 4 | B401-402',
9090
href: 'https://kccncna2025.sched.com/event/27Fee?iframe=no',
9191
},
92+
{
93+
title: 'Navigating the Rapid Evolution of Large Model Inference: Where Does Kubernetes Fit?',
94+
date: 'Wed, Nov 12, 2025',
95+
time: '2:15pm – 2:45pm EST',
96+
href: 'https://kccncna2025.sched.com/event/27Nlv?iframe=no',
97+
},
98+
{
99+
title: 'KServe Next: Advancing Generative AI Model Serving',
100+
date: 'Mon, Nov 10, 2025',
101+
time: '2:05pm – 2:30pm EST',
102+
href: 'https://colocatedeventsna2025.sched.com/event/28D4J',
103+
},
92104
],
93105
},
94106
];
@@ -174,6 +186,34 @@ Stay connected with the llm-d community at meetups, conferences, and workshops.
174186

175187
// no icon-only button in this variant
176188

189+
const getSessionStartEpoch = (s) => {
190+
try {
191+
const monthMap = {
192+
Jan: 0, Feb: 1, Mar: 2, Apr: 3, May: 4, Jun: 5,
193+
Jul: 6, Aug: 7, Sep: 8, Oct: 9, Nov: 10, Dec: 11,
194+
};
195+
const dateText = String(s.date || '');
196+
const timeText = String(s.time || '');
197+
198+
const dateMatch = dateText.match(/([A-Za-z]{3})\s+(\d{1,2}),\s*(\d{4})/);
199+
if (!dateMatch) return Number.MAX_SAFE_INTEGER;
200+
const monthIdx = monthMap[dateMatch[1]];
201+
const day = parseInt(dateMatch[2], 10);
202+
const year = parseInt(dateMatch[3], 10);
203+
204+
const timeMatch = timeText.match(/(\d{1,2})(?::(\d{2}))?\s*(am|pm)/i);
205+
const hour12 = timeMatch ? parseInt(timeMatch[1] || '0', 10) : 0;
206+
const minute = timeMatch && timeMatch[2] ? parseInt(timeMatch[2], 10) : 0;
207+
const meridiem = timeMatch ? (timeMatch[3] || '').toLowerCase() : 'am';
208+
let hour24 = hour12 % 12;
209+
if (meridiem === 'pm') hour24 += 12;
210+
211+
const dt = new Date(year, monthIdx, day, hour24, minute, 0, 0);
212+
return dt.getTime();
213+
} catch {
214+
return Number.MAX_SAFE_INTEGER;
215+
}
216+
};
177217
return (
178218
<div>
179219
{months.map((m) => {
@@ -199,7 +239,7 @@ Stay connected with the llm-d community at meetups, conferences, and workshops.
199239
<div style={sessionSectionStyle}>
200240
<p style={{margin: '0 0 8px 0', fontSize: '14px', fontWeight: 700, color: 'var(--ifm-color-primary)'}}>Sessions</p>
201241
<ul style={sessionListStyle}>
202-
{e.sessions.map((s) => (
242+
{[...e.sessions].sort((a, b) => getSessionStartEpoch(a) - getSessionStartEpoch(b)).map((s) => (
203243
<li key={`${s.title}-${s.date}-${s.time}`} style={sessionItemStyle}>
204244
<div>
205245
<a href={s.href} target="_blank" rel="noopener noreferrer" style={{fontWeight: 600, color: 'var(--ifm-color-primary)'}}>{s.title}</a>

0 commit comments

Comments
 (0)