Add a social share preview (OG image + complete meta)
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- typescript
- Área
- frontend
Línea de trabajo
Start with Base.astro in the website site, where the existing og:* and twitter:card tags are emitted, then check the hero-poster.webp reference that og:image points to. Build-time generation belongs in website/site/scripts/ or the existing media pipeline, so look there for how assets are produced. Done means the meta checklist is complete, a 1200×630 card is generated at build time, and og:image points to it while hero-poster.webp stays the video poster. Card design needs maintainer input first.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
Link unfurlers (Slack, Discord, Telegram, X, iMessage, Nostr clients like Snort/Nostrudel/Iris) currently render a preview from whatever generic meta they can find. Give the site a deliberate, on-brand social share preview.
What exists today
Base.astro already emits the minimum: og:type, og:title, og:description, og:url, og:image (the 1920×1080 hero-poster.webp), and twitter:card: summary_large_image. Missing everything else, and the one image doubles as the video poster.
Scope
Meta completion (Base.astro)
-
og:image:width/og:image:height/og:image:alt(some crawlers refuse images without dimensions) -
twitter:image,twitter:title,twitter:description(X ignoresog:*for several fields) -
og:site_name,og:locale - Optional: per-page
ogImageprop so pages can override (e.g./communitywith a people-focused card,/get-startedwith the build card)
Dedicated share card (1200×630)
- Design a purpose-built OG image instead of reusing the hero poster — 1200×630 is the canonical unfurl ratio; the 16:9 poster gets letterboxed/cropped differently per platform
- Content: wordmark ("nostream"), tagline ("your relay, your rules" or "Nostr runs on relays. nostream is the one you own."), dark background consistent with the site (#08080a), brand pink accent
- Source it from the hero-animation design language (the film's frame style) rather than a one-off export, so it stays coherent after future hero changes
- Emit at build time (
website/site/scripts/or the existingmediapipeline), not committed as a dead binary asset - Keep
hero-poster.webpas the film poster; pointog:imageat the new card
Nostr-specific (optional, if we want it)
- Nostr clients (noStr, Amethyst, Gossip, most web clients) read the same OG tags — no separate protocol needed; verify against one client
Acceptance
- Paste
https://ema.tnsor.network/into the Slack/Discord/Telegram link inspectors and see the new card render - X card validator shows title/description/image
- No regression to the existing
<title>/canonical handling
- Lenguaje dominante
- TypeScript
- Estrellas
- 829
- Forks
- 234
- Merge medio
- 18 h 18 min
- PR fusionados (30 d)
- 69
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de cameri/nostream
-
rust.sh shares one CARGO_TARGET_DIR across worktrees, so a scratch-copy build poisons the next runAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
Website
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Los mantenedores suelen responder en 1 día
-
feat(payments): subscription lifecycle, renewal invoices and plan-based write accessPosiblemente ocupada @Priyanshubhartistm la tomó hoy. Abiertoenhancement
cameri/nostream#908 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
Todos los issues de cameri/nostream
Issues similares
-
docs(api): openapi.yaml still documents gif-tools optimize colors as 2-256 instead of 2, 4, 16, 256Abiertoarea: backend documentation priority: low
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
snapotter-hq/SnapOtter#2919 ·
Los mantenedores suelen responder en 1 día
-
BUG: Uncaught MEMORY USAGE error on Redis < 4.0 causes keys table data load to fail entirelyAbiertoaccepted :+1: bug db/redis
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
beekeeper-studio/beekeeper-studio#4882 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
ready-for-triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
konflux-ci/konflux-ui#1630 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
ahmedkhaleel2004/gitdiagram#233 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
simkimsia/netlify-axi#19 ·
Los mantenedores suelen responder en 1 día