slack-gif-creator

Create Slack-optimized animated GIFs from programmatic frames using Pillow.

Updated May 19, 2026
One-click install
npx skills add https://github.com/anilveersingh1308/copilot-skills --skill slack-gif-creator-anilveersingh1308
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: slack-gif-creator
Source: https://github.com/anilveersingh1308/copilot-skills/tree/main/.github/skills/slack-gif-creator
Command: npx skills add https://github.com/anilveersingh1308/copilot-skills --skill slack-gif-creator-anilveersingh1308

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pillow, imageio, imageio-ffmpeg, numpy.

What problem does it solve?

This Skill helps you produce animated GIFs that meet Slack’s strict dimension and file-size expectations, avoiding the trial-and-error that makes GIFs look low quality or fail to upload well.

Core Features & Use Cases

  • Slack requirement guidance: Uses Slack-friendly target sizes (emoji GIFs at 128x128, message GIFs at 480x480) and practical limits (FPS 10–30, short durations, and a controlled color palette) to keep outputs usable.
  • GIF building toolkit (frame-by-frame): Provides an approach to generate animations programmatically with frame assembly and Slack-optimized export settings.
  • Validation and optimization utilities: Includes validators to check Slack readiness and GIF-building options to reduce size (palette quantization, duplicate-frame removal, and emoji-specific resizing).
  • Drawing and motion concepts: Supplies practical animation patterns (shake, pulse, bounce, spin, fade, slide, zoom, particle bursts) and drawing guidance using Pillow primitives, so animations look polished instead of “basic”.

Quick Start

Make a Slack emoji GIF that shows a bouncing star doing a quick sparkle animation for a single message.

Frequently Asked Questions about slack-gif-creator

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create Slack-ready animated GIFs that meet file size and dimension limits?

To create Slack-ready animated GIFs, generate programmatic frames using Pillow-based rendering and assemble them with constrained dimensions like 128x128 for emoji or 480x480 for messages. Apply palette quantization and FPS limits to reduce file size and ensure successful Slack uploads.

What are the size and dimension requirements for uploading custom animated emoji to Slack?

Custom animated emoji for Slack require 128x128 pixel dimensions, while message-sized GIFs target 480x480 pixels. Keeping FPS between 10 and 30 with a controlled color palette ensures the animated GIF remains within Slack's strict file size limits.

How do I optimize animated GIFs for Slack to prevent upload failures and low quality?

Optimize animated GIFs for Slack by applying palette quantization, removing duplicate frames, and constraining FPS. Using Pillow-based rendering to target specific dimensions like 128x128 or 480x480 reduces file size and prevents the trial-and-error that causes upload failures.

Can I use Pillow and imageio to generate frame-by-frame animations for Slack reactions?

Yes, you can use Pillow and imageio to generate frame-by-frame animations for Slack reactions. This Skill uses Pillow primitives for drawing and motion patterns like bounce and pulse, then assembles the frames into Slack-optimized animated GIFs with validated file constraints.

What is the best way to programmatically add motion patterns like shake and pulse to a Slack GIF?

The best way to add motion patterns to a Slack GIF is using Pillow-based drawing primitives with built-in animation concepts. This Skill supplies patterns for shake, pulse, bounce, spin, fade, slide, zoom, and particle bursts to make programmatically generated frames look polished.

Does Slack GIF creation require palette quantization and duplicate-frame removal?

Slack GIF creation requires palette quantization and duplicate-frame removal to enforce strict file size constraints. These optimization utilities reduce the overall GIF size while maintaining readability for emoji-sized and message-sized animations in Slack reactions and comments.