# Meme caption OG image template

Classic meme: a caption at the top and one at the bottom over a full-bleed picture, in heavy white type with a dark outline, inside a frame in your brand colour.

- Slug: `meme-caption`
- Preview (real render): https://shareglint.com/storage/template-previews/meme-caption.jpg
- Page: https://shareglint.com/en/templates/meme-caption

For social media teams and community managers who post memes under their own brand. Each caption shrinks to fit its third of the picture and stops at three lines; the bottom caption is optional. Without a picture the panel shows a dark halftone in the accent. The layout is the same at every size; on a story the captions and the handle stay clear of the app's bars.

## Fields

Every field is optional. Long text shrinks to fit instead of overflowing; an image field takes a public URL that we fetch on our side.

| Field | Type | Description | Example |
|---|---|---|---|
| `top_text` | text | Caption at the top. (default: Top text) | When the build passes |
| `bottom_text` | text | Caption at the bottom (optional). | on the first try |
| `handle` | text | Account on the tab in the corner of the frame. | @northwind.dev |
| `image` | image URL | The picture under the captions. | https://example.com/images/laptop.jpg |
| `accent` | colour | Brand colour as hex, e.g. #6366f1. Drives buttons, highlights and the background glow. (default: #2563eb) | #2563eb |
| `theme` | dark | light | Colour scheme: dark or light. | — |

## Render it with one request

```bash
curl -X POST "https://shareglint.com/v1/images?wait=true" \
  -H "Authorization: Bearer sk_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "template": "meme-caption",
    "modifications": {
        "top_text": "When the build passes",
        "bottom_text": "on the first try",
        "handle": "@northwind.dev",
        "image": "https://example.com/images/laptop.jpg"
    }
}'
```

## Make it yours

accent and theme change per request. For anything more, copy the template into your account: you get an ordinary HTML template with the same fields that you can edit in the dashboard or through the API. If the slug is free on your account, the copy takes it — your integrations switch to your version without changing a line.

```bash
curl -X POST "https://shareglint.com/v1/templates/library/meme-caption/copy" -H "Authorization: Bearer sk_live_YOUR_KEY"
```
