slack-gif-creator

Create animated GIFs optimized for Slack emoji and message requirements using Python.

Updated Apr 16, 2026
One-click install
npx skills add https://github.com/quangtuyennguyen/loan-application-workflow --skill slack-gif-creator-quangtuyennguyen
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: slack-gif-creator
Source: https://github.com/quangtuyennguyen/loan-application-workflow/tree/main/.claude/skills/slack-gif-creator
Command: npx skills add https://github.com/quangtuyennguyen/loan-application-workflow --skill slack-gif-creator-quangtuyennguyen

SYSTEM DOCUMENTATION & REQUIREMENTS

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

What problem does it solve? Creating animated GIFs that meet Slack's strict dimension, file size, and color constraints requires manual trial and error with image tooling. This Skill provides the constraints, validation utilities, and animation building blocks to produce Slack-ready GIFs programmatically. ## Core Features & Use Cases - GIF Assembly and Optimization: The GIFBuilder class combines PIL-generated frames, applies global palette color quantization, removes duplicate frames, and auto-resizes for emoji dimensions. - Slack Validation: Validators check dimensions, file size, frame count, and duration against Slack emoji (128x128) and message GIF (480x480) requirements. - Animation Toolkit: Easing functions (bounce, elastic, back), frame composition helpers (gradients, stars, circles, text), and documented motion concepts like shake, pulse, spin, and particle bursts. - Use Case: A user asks for an animated emoji of a bouncing star for their Slack workspace; the Skill guides frame generation with PIL, applies bounce easing, and saves a 128x128 optimized GIF validated for Slack upload. ## Quick Start Ask the assistant to make an animated GIF of a bouncing star for a Slack emoji using the slack-gif-creator skill.

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 an animated GIF for Slack with Python?▼

Use the GIFBuilder class to assemble PIL Image frames, then call save() with your target path. Set width and height to 128 for emoji or 480 for message GIFs, choose an FPS between 10 and 30, and the builder handles color quantization and optimization automatically.

What size should a Slack emoji GIF be?▼

Slack emoji GIFs should be 128x128 pixels, kept under 3 seconds, and use 48-128 colors for small file sizes. Message GIFs can be larger at 480x480. The validate_gif function checks whether your output meets these constraints.

How do I reduce the file size of an animated GIF?▼

Lower the FPS, reduce the number of colors to 48, shrink dimensions to 128x128, and enable remove_duplicates and optimize_for_emoji in the save() call. These options apply global palette quantization and drop nearly identical frames.

Can I animate an image a user uploads into a GIF?▼

Yes, load the uploaded image with PIL's Image.open and either animate it directly or use it as visual reference for colors and style. The Skill does not include pre-packaged graphics, so all drawing uses PIL primitives like ellipses, polygons, and lines.

What easing functions are available for smooth GIF animation?▼

The easing module provides linear, ease_in, ease_out, ease_in_out, bounce, elastic, and back variants. Use the interpolate() function with a progress value from 0.0 to 1.0 to compute eased positions, scales, or rotations between frames.