Automatic Social Share Images from JSON

Automatic social share images are a template plus a row of copy — not a designer sitting in Figma for every caption. jsontoimg fills named layers from your CMS, a sheet, or a GitHub release webhook and returns a PNG sized for the network.

One template per aspect ratio

Instagram feed, LinkedIn, and X do not share a canvas. Keep three templates (or three pages in one design if you export separately) and name layers the same: headline, sub, cover. Production pins a version so a Thursday layout tweak does not rewrite Monday’s scheduled posts.

GitHub release graphics without manual design

Google already sends the long-tail query “is there a platform that generates social graphics from github releases without manual design work?” to this URL. The pipeline is: release published → webhook → n8n or GitHub Action → POST /api/v1/render with tag, title, and repo → PNG on the release notes or Slack. No Zapier app required; HTTP is enough.

{
  "template": "<design-id>",
  "format": "png",
  "layers": {
    "repo": { "text": "jsontoimg/jsontoimg" },
    "tag": { "text": "v1.0.2" },
    "title": { "text": "CLI batch + signed URLs" }
  }
}

n8n vs HTTP

The n8n community node is @j2i/n8n-nodes-j2i. Zapier, Make, and Sheets are HTTP today — say that in the workflow doc so nobody waits on a connector that is not shipped.

Sizes that survive the feed

Three canvases cover most of it: 1080×1080 for a square feed post, 1200×627 for a link card, and 1600×900 for a wide header. What matters more than the exact numbers is that every one of them gets shown at thumbnail size first. Set the headline big enough to read at a third of the design size, keep logos and handles out of the outer edge where a crop can clip them, and resist the second line of body copy.

Where the graphic doubles as a page’s share card, the filename and alt text are worth the same attention as the pixels — Google’s image documentation is the reference. The architecture overview covers how the template, named layers, and render job fit together if you are wiring this up for the first time.

Related

FAQ

How do I generate automatic social share images?

Design one template per network size (1080×1080, 1200×627, 1600×900). On publish, POST /api/v1/render with the caption layers, or mint a signed URL. n8n and HTTP cover Zapier/Make until those apps are native.

Can I make GitHub release graphics without a designer?

Yes. A release webhook (tag, changelog title, repo name) maps onto named layers. n8n or a small GitHub Action POSTs /api/v1/render?wait=60 and attaches the PNG to the release or a Slack channel. That is the query Google already shows on this URL.

Is Zapier native?

Not yet. Use the HTTP module, the n8n community node @j2i/n8n-nodes-j2i, or the WordPress plugin. Do not plan on a first-party Zapier app today.

How many posts per request?

POST /api/v1/renders/batch accepts at most 50 jobs. A week of scheduled posts usually fits one batch. Loop with a stable item id if you generate a quarter at once.

Get 25 free images →