mcpField
M
meme-maker

meme-maker

github.com/openclawCreative & media393.3k340 installsUpdated today
Repository

About meme-maker

A command-line skill for finding curated meme templates and rendering meme drafts locally as SVG or PNG, or through Imgflip. It helps users turn a joke topic into a suitable format and captioned image.

Key features

  1. 01Search and suggest templates
  2. 02Render local SVG or PNG
  3. 03Create hosted images with Imgflip
  4. 04Refresh Imgflip template research
  5. 05Curated registry with text placement

Use cases

  1. 01Find a template for a joke topic
  2. 02Create a locally rendered meme draft
  3. 03Generate a hosted Imgflip caption image

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/openclaw/openclaw --skill meme-maker

After installing, type/meme-makerin Claude Code to confirm it loaded.

Bundled filesreferences/templates.jsonscripts/meme.mjs

Details

From the project README

Meme Maker

Create meme drafts from a curated template registry without bundling copyrighted template images.

Quick start

  • Search: {baseDir}/scripts/meme.mjs search "bad choice"
  • Suggest: {baseDir}/scripts/meme.mjs suggest "slow python image scripts"
  • Local SVG: {baseDir}/scripts/meme.mjs render drake --text "Repeated downloads" --text "Cached templates" --out /tmp/meme.svg
  • Local PNG: {baseDir}/scripts/meme.mjs render drake --text "Maybe API" --text "Local render" --out /tmp/meme.png
  • Imgflip hosted: {baseDir}/scripts/meme.mjs render drake --service imgflip --text "before" --text "after"

Modes

  • local is default. It downloads template images from their source URL with a browser-like user agent, caches them under the user cache dir, embeds the image in an SVG, and writes SVG. If --out ends in .png, it renders through an isolated headless browser using OpenClaw's Playwright support. PNG output requires Playwright's Chromium or an installed Google Chrome; SVG output needs no browser.
  • imgflip calls Imgflip caption_image and prints the hosted URL. It requires IMGFLIP_USER and IMGFLIP_PASS unless supplied via --username and --password.

Commands

  • list [--json]: list the built-in curated templates.
  • search <query> [--json]: search template names, aliases, tags, and use cases.
  • suggest <topic> [--limit N] [--json]: rank templates for the topic.
  • render <template> --text TEXT ... [--out PATH] [--service local|imgflip]: generate a meme.
  • refresh [--limit N] [--json]: fetch current Imgflip top templates for research; do not overwrite the curated registry automatically.

Template registry

  • Read {baseDir}/references/templates.json for the curated 20-template registry.
  • Each entry includes Imgflip metadata, Know Your Meme link, aliases, tags, fields, and local text placement boxes.
  • Prefer suggest first when the user describes a joke but does not know the format.

Hygiene

  • Do not ship template image files in the skill.
  • Do not use shared or hardcoded Imgflip credentials.
  • Keep Know Your Meme lookups out of the render hot path; use KYM links for explanation/provenance only.
  • If PNG output fails because the browser is unavailable, use --out meme.svg (or another .svg path). Do not npm install packages into the skill directory or the OpenClaw tree to enable PNG.

Comments

Markdown supported