Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

`next/og` compatible function built on Satori

Ouverte
#442 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
5/5
Temps estimé
Plus d'une semaine
Accessibilité débutants
35/100
Type d'issue
Fonctionnalité
Clarté
Plutôt claire
Activité
Active
Stack technique
typescript, wasm
Domaine
backend, web-dev

Piste de recherche

Start by reading the existing next/og shim in vinext and how Void handles Wasm modules on workerd; the issue does not name files or tests. Prototype an ImageResponse compatible with next/og using Satori and resvg, then verify JSX image generation works in Void apps on Workers.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Summary

It would be great if Void provided an ImageResponse compatible with next/og, so OG images can be generated from JSX in Void apps (e.g. import { ImageResponse } from 'void/og').

Motivation

Most apps need dynamic OG images, and next/og is the API most people (and coding agents) already know. If existing next/og code worked by just changing the import, moving from Next.js/Vercel to Void would be much easier.

Setting this up yourself on Workers is surprisingly tricky. Satori and resvg ship Wasm that has to be loaded as precompiled modules on workerd, and recent Satori versions don't run on Workers out of the box. This feels like something Void could solve once for everyone. vinext already has a next/og shim, but that only helps vinext apps.

Why Satori and not Cloudflare Images

Cloudflare Images can transform and overlay images, and recently added basic text rendering. But it has no layout engine: no JSX/HTML/CSS input, no flexbox, no nested styled elements. So it can't reproduce what next/og does. next/og itself is built on Satori + resvg, so building on vercel/satori is the most straightforward way to get the same output.

If this direction is appropriate, I would be happy to help implement the prototype.

Langage dominant
TypeScript
Étoiles
402
Forks
32
Merge moyen
12 h 28 min
PR mergées (30 j)
77

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de voidzero-dev/void

Toutes les issues de voidzero-dev/void

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.