feat(events): redesign events list, cards, and detail pages - #20506
Conversation
Rework the events section to match the blog/what-is look and the shared
design system (.card/.badge/.btn, shared type scale, icon partial):
- List: condensed what-is-style hero; blog-style pill tabs (All/On-demand/
Upcoming) with RSS beside the enlarged, scrollable dropdown filters.
- Cards: rebuilt as text cards with badges, mono date square, presenter
avatars + names, primary Register / ghost Watch CTAs, and a client-side
'in X days' / 'Today' countdown badge (computed in the visitor's timezone).
- Detail: lighter blog-style layout with hairline separators, violet-50
highlight panels ('what you'll learn' + Pulumi Cloud note), a mobile
sticky-to-form Register button, and darker body text.
- Standardize button horizontal padding in shared _button.scss; enlarge
filter-select option items; drop dead event-filtering.ts.
- Update Engin Diri's author photo.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Pre-merge Review — Last updated 2026-07-24T16:21:56ZTip Summary: This is a front-end redesign of the events section — the list page, the event cards, and the single-event detail pages — touching Hugo templates/partials, two SCSS bundles, and the events TypeScript. It rebuilds the event card on the shared design system ( Review confidence:
Investigation log
🔍 Verification trail5 claims extracted · 0 verified · 0 unverifiable · 0 contradicted
🚨 Outstanding in this PRNo outstanding findings in this PR.
|
|
Your site preview for commit b49101c is ready! 🎉 http://www-testing-pulumi-docs-origin-pr-20506-b49101c9.s3-website.us-west-2.amazonaws.com Changed pages: |
Lighthouse Performance ReportCommit: b49101c | Metric definitions
|
…page-redesign # Conflicts: # layouts/events/single.html
adamgordonbell
left a comment
There was a problem hiding this comment.
Looks good!
One thing I'd love for the events page, is to feature the speaker images more prominently.
We create images for Luma, but the speaker is minimized visually on our own page, vs luma or meetup for instance.
Increase event detail page speaker photos (48px -> 80px), align the "Speakers" label to font-overline-sm to match the timing row, and arrange speakers in a responsive 3-column grid. Also enlarge and restructure the event card presenter avatars. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
@adamgordonbell For sure! I increased the image size on both the cards and the detail pages. |
…r row order The filter-select dropdowns beside the events tab pills were rendered with form-select chrome (inset bottom shadow reading as a gradient, md+ w-48 fixed width, text-sm on a text-xs base) while the pills next to them are plain outline buttons. Restyle the toggles to match .btn.btn-sm.btn-outline: h-8, text-sm, rounded-md, gray-300 border, hover/open border-gray-500 bg-gray-100, no shadow, width sized to content. Consolidate the styling into components/_filter-select.scss and drop the page-scoped override block from _event-list.scss. The component is used only by the events list in this repo (pulumi/registry vendors its own separate copy of the theme), so a single unscoped rule set replaces the previous two-layer arrangement where the page block had to neutralize the component's chrome property by property. Spacing: a gap on the <pulumi-filter-select> host has no effect because the flex container is the component's shadow-DOM div, so space the slotted groups with ml-3 to match the pills' gap-3, and zero the shadow styles' 0.5em margin-right via ::part(toggle) so the last dropdown leaves no trailing gap before the RSS icon. Also stop reversing the filter row on mobile: flex-col-reverse put the dropdowns above the tab pills, so use flex-col and move the tools' mobile margin from mb-3 to mt-3 so the spacing sits between the two rows. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…page-redesign Two conflicts, both from master's #20487 layout refactor overlapping this branch's events redesign: - layouts/partials/events/list-section.html: master renamed template-partials/template-event-card.html to events/event-card.html and passes an "upcoming" flag. Took master's new partial path with this branch's parameter set: the redesigned card derives its CTA from the event's youtube_url, and the list only renders events that are upcoming or have a recording, so "not on-demand" is equivalent to "upcoming" and the flag is redundant. - theme/src/scss/_templates.scss: kept this branch's font-overline month header and dropped master's .template-event-card / .event-card-grid blocks. The redesigned card composes .card / .card-hover / .badge / .btn instead, so none of those class names are referenced anywhere in the merged tree. Git resolved the card itself as a rename, carrying this branch's changes onto master's new path; master's edit there was a pure move with no content change. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Proposed changes
Redesigns the
/eventssection to match the blog/what-is look and the shared design system (.card/.badge/.btn, shared type scale,iconpartial).Important
Depends on #20502 (shared breadcrumb partial) — merge that first, then rebase.
_button.scss; enlarge filter-select options; remove deadevent-filtering.ts; update Engin Diri's photo.Related issues (optional)
Depends on #20502.