A Go API wrapping paulfitz/makesweet for generating animated GIF memes, plus a Slack bot that turns emoji reactions on images into MakeSweet GIFs.
.
├── makesweet/ # C++ GIF rendering engine and templates
├── server/ # Go HTTP API
├── slack-bot/ # Python Slack Socket Mode integration
├── Dockerfile # API image
├── compose.yml # API + bot local orchestration
└── render.yaml # API + bot Render blueprint
The Slack bot was imported from guitarbeat/makesweet-slack-bot with its Git history preserved. New development for both components can happen here.
⏱️ First build takes 5–10 minutes due to C++ compilation of the makesweet core.
The blueprint creates separate makesweet-server and makesweet-slack-bot web services. Set the bot's secret SLACK_BOT_TOKEN and SLACK_APP_TOKEN values, then set MAKESWEET_URL to the public URL Render assigns to makesweet-server (for example, https://makesweet-server.onrender.com). The bot exposes /health on Render's assigned PORT while its Slack connection runs in Socket Mode.
All endpoints accept POST with multipart/form-data.
| Template | Endpoint | Form Fields |
|---|---|---|
| Heart Locket | /api/gif/heart-locket |
image-left, image-right |
| Billboard | /api/gif/billboard |
image |
| Flag | /api/gif/flag |
image |
| Flying Bear | /api/gif/flying-bear |
image |
| Nesting Doll | /api/gif/nesting-doll |
image-left, image-mid, image-right |
| Circuit Board | /api/gif/circuit |
image |
curl -X POST https://your-server.onrender.com/api/gif/flag \
-F "image=@photo.png" \
-o flag.gifDocker Compose is the recommended path:
git clone https://github.com/guitarbeat/makesweet-server.git
cd makesweet-server
cp .env.example .envAdd your Slack credentials to .env:
SLACK_BOT_TOKEN=xoxb-your-token
SLACK_APP_TOKEN=xapp-your-tokenThen start both services:
docker compose upThe API runs at http://localhost:8080/api, and the bot health endpoint is available at http://localhost:3000/health. Inside Compose, the bot calls the API at http://makesweet-server:8080.
To run only the API, no Slack credentials are needed:
docker compose up makesweet-serverFor Slack app creation, scopes, events, and non-Docker development, see slack-bot/README.md.
Once running, visit /api/docs/index.html for interactive API documentation.
- paulfitz/makesweet — The core C++ GIF generation engine
- Maheshivara/makesweet-server — Original Go server implementation
guitarbeat/makesweet-slack-bot— Original Slack bot repository

