leek/filament-giphy
A Filament plugin that adds Giphy integration to your admin panel, letting users search and insert GIFs directly into forms and rich text editors via a simple picker.
composer require the package and register the plugin on your panel in app/Providers/Filament/*PanelProvider.php via ->plugin(FilamentGiphyPlugin::make()). Without this the modal assets (giphy.css, JS) are never loaded and the picker will render unstyled or not at all.php artisan vendor:publish --tag=...giphy...config) early, before you build anything on top of it. From v1.0.1 the config contains grid_rendition, modal_icon and modal_icon_color; older published configs will be missing the icon keys and still default to the old rendition..env and reference it from the config file rather than hardcoding — it's the one secret this package needs and it's easy to leak into a committed config.cover_gif column on a Post resource), save a record, and confirm the saved value round-trips. Do this before wiring it into a rich editor, since the editor integration hides the stored value behind editor state.data-giphy-* attributes on the saved figure — those tell you whether the problem is fetch-side or render-side.->required(), and ->columnSpanFull() behave as expected.config/giphy.php (grid_rendition, modal_icon, modal_icon_color) and override per panel with FilamentGiphyPlugin::make()->modalIcon('heroicon-o-photo')->modalIconColor('warning'). Keep overrides in the panel provider so the intent is visible in one file.grid_rendition (now fixed_width) only affects picker previews. Store the canonical/original URL for output and let the front end pick a size — do not persist the preview URL, or you'll be stuck with a 200px GIF as your hero image.data-giphy-* creator attributes. If you need attribution or a credit line, read those attributes in your own Blade partial / JS rather than relying on the package's markup — v1.0.1 deliberately stopped rendering the caption.strip_tags allowlist keeps data-giphy-* attributes and the <figure> wrapper, otherwise attribution data silently disappears on save.grid_rendition to fixed_width and add modal_icon / modal_icon_color, or you'll keep the blurrier previews and silently lose the new icon defaults.data-giphy-* attributes persist. If you were relying on the caption for layout (spacing, <figcaption> styling), those styles are now dead. More importantly, check Giphy's current attribution requirements for your use case before shipping a UI with no visible credit — the data attributes give you the hook to add your own credit line.giphy.css). The picker no longer depends on your host Tailwind build, which is good — but it also means host Tailwind resets/preflight can still bleed into the modal. If styles look subtly wrong, scope a reset around the modal rather than editing package CSS.php artisan filament:assets (and clear view/config cache) before debugging "my styles didn't change" — this is the most common false alarm.fixed_width, fixed_height, downsized, original, …). A typo yields missing/blank previews rather than an exception, so verify the network response when previews don't appear.data-giphy-* present in saved markup. Working that list in order avoids chasing CSS for what is almost always config or assets.How can I help you explore Laravel packages today?