this repo has no description atmosphereconf-vods.wisp.place/
4
fork

Configure Feed

Select the types of activity you want to include in your feed.

all og

+6 -4
public/og/videos/2026-atmosphere-report.png

This is a binary file and will not be displayed.

public/og/videos/a-fireside-chat-on-resonant-computing-why-we-wrote-the-manifesto-and-where-we-go-from-here.png

This is a binary file and will not be displayed.

public/og/videos/a-free-press-needs-free-protocols.png

This is a binary file and will not be displayed.

public/og/videos/at-advent-an-atproto-adventure.png

This is a binary file and will not be displayed.

public/og/videos/dive-into-user-research-with-fellow-atproto-builders-and-users.png

This is a binary file and will not be displayed.

public/og/videos/how-and-why-news-on-atprotocol.png

This is a binary file and will not be displayed.

public/og/videos/keynote-towards-modular-open-science.png

This is a binary file and will not be displayed.

public/og/videos/new-directions.png

This is a binary file and will not be displayed.

public/og/videos/npmx-modern-browser-for-npm.png

This is a binary file and will not be displayed.

public/og/videos/webtiles-showcase.png

This is a binary file and will not be displayed.

+6 -4
src/og/templates.ts
··· 135 135 box( 136 136 { 137 137 key: `pair-${index}`, 138 - width: "100%", 138 + width: "50%", 139 139 height: "100%", 140 140 display: "flex", 141 141 backgroundColor: "#08101a", ··· 308 308 } 309 309 310 310 function sharedCard(input: SharedCardInput) { 311 - const speakerNames = (input.speakers ?? []).map((speaker) => speaker.name).join(" · "); 311 + const speakerNames = (input.speakers ?? []) 312 + .map((speaker) => speaker.name) 313 + .join(" · "); 312 314 const contentWidth = OG_WIDTH - 80; 313 315 const imagePaneWidth = input.imagePaneWidth ?? 440; 314 316 const textPaneWidth = contentWidth - imagePaneWidth; ··· 443 445 } 444 446 445 447 export function renderVideoOg(input: VideoOgInput) { 446 - const subtitleParts = [input.timeLabel].filter( 447 - (value): value is string => Boolean(value), 448 + const subtitleParts = [input.timeLabel].filter((value): value is string => 449 + Boolean(value), 448 450 ); 449 451 const speakerImageDataUrls = input.speakers 450 452 .map((speaker) => speaker.avatarDataUrl)