Skip to content
Back to skills

Instagram Photo Text Overlay

ASecurity

Overlay text on photos for Instagram posts. Generates portrait (4:5) images with gradient overlays, titles, and optional numbered lists. Use when creating Instagram content that needs text on top of a photo — destination itineraries, top-5 lists, travel highlights, or any branded social image with text overlay.

  • 7 stars
  • 0 votes
  • 0 copies
  • 5 views
  • Added June 7, 2026
content-marketingpythongobash

Security analysis

A92/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 2 files and shows the line behind each finding

Scanned June 7, 2026

npx -y skills add modbender/skill-library-mcp --skill instagram-photo-text-overlay --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Instagram Photo Text Overlay?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Instagram Photo Text Overlay
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/modbender-instagram-photo-text-overlay/badge)](https://www.skillsdirectory.com/skills/modbender-instagram-photo-text-overlay)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: instagram-photo-text-overlay
description: Overlay text on photos for Instagram posts. Generates portrait (4:5) images with gradient overlays, titles, and optional numbered lists. Use when creating Instagram content that needs text on top of a photo — destination itineraries, top-5 lists, travel highlights, or any branded social image with text overlay.
---

# Instagram Photo Text Overlay

Overlay text onto photos for Instagram-ready images. Two styles: **list** (title + numbered items) and **clean** (title only).

## Quick Start

```bash
python3 scripts/overlay.py \
  --input photo.jpg \
  --output result.jpg \
  --title "TAORMINA" \
  --subtitle "3-Day Trip Itinerary" \
  --items '["Teatro Greco|Ancient theatre with Etna views", "Isola Bella|Crystal-clear beach"]' \
  --style list
```

## Options

| Flag | Default | Description |
|------|---------|-------------|
| `--input` | (required) | Source photo path |
| `--output` | (required) | Output image path |
| `--title` | (required) | Main title (auto-uppercased) |
| `--subtitle` | `"3-Day Trip Itinerary"` | Subtitle below title |
| `--items` | `[]` | JSON array of `"Name\|Reason"` strings (list style) |
| `--watermark` | `"tabiji.ai"` | Top-left watermark (empty string to disable) |
| `--accent` | `255,220,150` | Accent color for numbers/tags (R,G,B) |
| `--quote` | `""` | Quote text (for quote style) |
| `--style` | `list` | `list` / `clean` / `quote` |
| `--quality` | `95` | JPEG output quality |

## Styles

- **clean**: Cover slide. Big title = destination + category + count (e.g. "7 unique cheap eats in barcelona spain"). Subtitle = credibility/source line (e.g. "Insider takes from r/barcelona"). Best as carousel first slide.
- **list**: Content slides. Title + subtitle + divider + numbered items with reasons. Best for top-5 / itinerary posts.
- **quote**: Title with accent bar on the left + blockquote text below. No subtitle or divider. Best for travel quotes, testimonials, or key takeaways.

## Workflow

1. Receive photo + destination/topic + list of items from user
2. Run `scripts/overlay.py` with appropriate args
3. Output is auto-cropped to 4:5 portrait (Instagram optimal)
4. Review output and adjust if needed (font sizes scale with image width)

## Requirements

- Python 3 + Pillow (`pip install Pillow`)
- Works on macOS (Helvetica) and Linux (DejaVu/Liberation fallback)

## Tips

- Items format: `"Name|Short reason"` — the pipe separates bold name from description
- For destinations, pull top picks from existing itineraries when available
- Gradient + white text ensures readability on any photo
- All font sizes are proportional to image width — works at any resolution

Files in this skill

  • SKILL.md2.7 KB
  • scripts/overlay.py11.7 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…