Stickers 🏷️
Hi everyone! 👋
I'd like to share a new extension I've been working on for Flarum 2.x: a sticker manager that brings animated stickers — including Lottie JSON and Telegram TGS files — into your forum's composer.
Repository: ram0ng1/stickers
Packagist: https://packagist.org/packages/ramon/stickers
Support: https://ramonguilherme.com.br
Preview


What it does
Stickers lets your community drop expressive, animated stickers into posts the same way they'd use emojis. Admins manage everything from the panel; users pick stickers from a floating picker in the composer.
It natively supports:
- Lottie JSON (
.json) — rendered with lottie-web's canvas renderer
- Telegram TGS (
.tgs) — gzip-compressed Lottie, decompressed in the browser via the native DecompressionStream API
- PNG, GIF, WebP, JPEG — for everything else
Features
- 🖼️ Upload and manage stickers from the admin panel
- 📂 Organize stickers by categories with custom display names
- 🎬 Animated sticker support via lottie-web (canvas renderer)
- ✍️ Insert stickers into posts via a floating sticker picker in the composer
- 💬 Text replacement codes (e.g.
:sticker_name:) rendered inline in posts
- 📦 Bulk upload multiple files at once
- 🗑️ Bulk delete by selection
- 📤 Export all stickers as a ZIP (files + metadata)
- 📥 Import from ZIP or JSON — with automatic deduplication (existing
:codes: are skipped)
- ⚙️ Admin settings:
- Play animations on hover only, or autoplay
- Show/hide sticker name tooltip on hover
Installation
composer require ramon/stickers
Updating
composer update ramon/stickers
php flarum cache:clear
⚠️ A note on TGS files — please read
This extension supports the TGS format as a technical capability, but format support does not grant any rights over the content inside it.
Telegram sticker packs are creative works owned by their authors. Before uploading a TGS file to your forum, please make sure that:
- You are the original author of the sticker, or
- You have explicit permission from the author to redistribute it, or
- The sticker is released under a license that permits redistribution (e.g. Creative Commons)
The extension shows a license reminder inside the admin panel whenever a TGS file is loaded. That reminder is informational only — the forum administrator is solely responsible for ensuring uploaded content complies with copyright law and the original platform's terms of service.
I accept no liability for unauthorized use of third-party sticker content.
Under the hood
Both .json and .tgs files are rendered with lottie-web, specifically the canvas renderer (lottie-web/build/player/lottie_canvas), bundled statically into the extension's JS so there's no runtime CDN dependency. TGS decompression happens entirely client-side using the browser's native DecompressionStream API — no extra libraries needed.
License
MIT — © Ramon Guilherme
Feedback, bug reports and suggestions are very welcome! If you try it out on your forum I'd love to hear how it goes. 🥑