slack-gif-creator

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

Updated Apr 7, 2026
One-click install
npx skills add https://github.com/NT-boop-star/BRMV-tract --skill slack-gif-creator-nt-boop-star
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: slack-gif-creator
Source: https://github.com/NT-boop-star/BRMV-tract/tree/main/antigravity/skills/slack-gif-creator
Command: npx skills add https://github.com/NT-boop-star/BRMV-tract --skill slack-gif-creator-nt-boop-star

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 tools, and this Skill provides the constraints, utilities, and validation needed to produce compliant GIFs programmatically. ## Core Features & Use Cases - GIF Assembly and Optimization: The GIFBuilder class assembles PIL-generated frames, applies global palette color quantization, removes duplicate frames, and resizes output for Slack emoji (128x128) or message (480x480) formats. - Animation Motion Utilities: Easing functions (bounce, elastic, back, ease-in-out) and frame composer helpers (gradients, stars, circles, text) enable smooth motion effects like shake, pulse, spin, fade, and particle bursts. - Slack Compliance Validation: Built-in validators check dimensions, file size, frame count, and duration against Slack requirements before upload. - Use Case: A user asks for an animated emoji of a bouncing star for their Slack workspace; the Skill generates frames with PIL, applies bounce easing, optimizes to 128x128 with 48 colors, and validates the result is Slack-ready. ## Quick Start Create a Slack emoji GIF of a pulsing heart at 128x128 pixels and validate it meets Slack's requirements.

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 in Python?

Use the GIFBuilder class to assemble PIL Image frames, then call save() with your target color count. Set width and height to 128 for emoji or 480 for message GIFs, and the builder handles palette optimization and encoding via imageio.

What size should a Slack emoji GIF be?

Slack emoji GIFs should be 128x128 pixels, kept under 3 seconds, and use 48-128 colors to minimize file size. Message GIFs can be larger at 480x480 pixels with 10-30 FPS.

How do I reduce GIF file size for Slack?

Lower the FPS to 10, reduce colors to 48 with num_colors, shrink dimensions to 128x128, and enable remove_duplicates and optimize_for_emoji in the save() call. These steps combine frame deduplication, palette quantization, and resizing.

Can I animate an uploaded image into a Slack GIF?

Yes, load the uploaded image with PIL's Image.open() and either animate it directly by transforming frames (rotate, scale, fade) or use it as a style reference for drawing new graphics with ImageDraw primitives.

Why does my Slack GIF look choppy or amateurish?

Choppy results usually come from linear motion and thin lines. Apply easing functions like ease_out or bounce_out through the interpolate() helper, and use outline widths of 2 or more pixels for smoother, polished visuals.