0
0
Fork 0
mirror of https://github.com/discourse/discourse.git synced 2026-08-08 17:53:55 +08:00
discourse/app
Penar Musaraj 2d895de297
FEATURE: generated OpenGraph images for topics (#39194)
Adds the ability to automatically generate Open Graph images for topics
that don't have their own image. When enabled via the
generate_topic_og_image site setting, a background job creates a branded
1200×630 PNG for each new topic OP.

Key changes:
- TopicOgImageGenerator builds an SVG and converts it to PNG via
ImageMagick
  - Images generated via GenerateTopicOgImage Sidekiq job
- Generated images handled via og_image_upload_id column on the topics
table
- TopicView#image_url falls back to the generated OG image when no topic
image is available

This includes a preview for admins so they can see if they like this
feature or not:


https://github.com/user-attachments/assets/62d17704-4ee5-4859-ac37-b127fe27b85c


And it also respects the site's default theme: 

<img width="1200" height="630" alt="image"
src="https://github.com/user-attachments/assets/678f5c5d-e593-4385-b800-141196dfc221"
/>

---------

Co-authored-by: discourse-patch-triage[bot] <272280883+discourse-patch-triage[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Grubba <gabriel@discourse.org>
2026-06-26 10:37:10 -04:00
..
assets FEATURE: generated OpenGraph images for topics (#39194) 2026-06-26 10:37:10 -04:00
controllers FEATURE: generated OpenGraph images for topics (#39194) 2026-06-26 10:37:10 -04:00
helpers DEV: Track beacon browser pageviews behind dashboard_improvements (#40934) 2026-06-23 10:21:39 +08:00
jobs FEATURE: generated OpenGraph images for topics (#39194) 2026-06-26 10:37:10 -04:00
mailers FEATURE: Log in with a one-time email code (#40804) 2026-06-17 12:34:48 -07:00
models FEATURE: generated OpenGraph images for topics (#39194) 2026-06-26 10:37:10 -04:00
queries/reports FIX: Enforce can_see_ip checks across admin IP features (#40019) 2026-05-19 11:37:20 +08:00
serializers SECURITY: Prevent expired invite details from leaking (#41184) 2026-06-25 22:01:51 +08:00
services FEATURE: Localizable /about page fields via its settings page (#41123) 2026-06-26 20:41:08 +08:00
views FEATURE: Localizable /about page fields via its settings page (#41123) 2026-06-26 20:41:08 +08:00