favgif: GIFs in Slack suchen, favorisieren und posten
favgif ist eine Slack-App, mit der Teams GIFs direkt in Slack suchen, favorisieren und in Channels posten – ohne den Chat zu verlassen.
Einstieg über den /favgif Slash-Command direkt im Nachrichtenfeld
Meine Rolle
Solo-Projekt – Produkt, Slack-Integration und das komplette Backend.
Was favgif macht
- Suchen über Slash-Command oder globalen Shortcut – Trending-GIFs (Klipy) oder gezielte Suche (Klipy, Tenor)
- Posten des gewählten GIFs in den Channel, aus dem heraus die Auswahl geöffnet wurde
- Favoriten pro Nutzer und Workspace speichern und wieder abrufen
- Link einfügen – direkte GIF-URLs oder Giphy-Seiten werden automatisch zu einer GIF-Datei normalisiert
- Paginierung der Ergebnisse (Weiter/Zurück)
GIF-Auswahl im Modal – mit „Post" direkt in den Channel
Favoriten schnell auswählen oder per Link einfügen
Technische Herausforderungen
- Backend als einzelne Edge Function – die gesamte Slack-Interaktionslogik (Slash-Commands, Shortcuts, Modals, Block Actions) läuft in einer einzigen Supabase Edge Function (Deno), mit Postgres für nutzerbezogene Favoriten.
- Mehrere GIF-Anbieter – Klipy, Tenor und Giphy hinter einer einheitlichen Oberfläche, inklusive Normalisierung von Giphy-Seiten-URLs zu direkten GIF-Dateien.
- Slack-Interaktionsmodell – Modals, Paginierung und das Posten mit dem richtigen Channel-Kontext sauber über Slacks Interaktions-Payloads abbilden.
Tech-Stack
- Backend: Supabase Edge Function (Deno), Postgres
- Integration: Slack API (Slash-Commands, Shortcuts, Modals, Block Kit)
- GIF-Quellen: Klipy, Tenor, Giphy
- Sprache: TypeScript
Self-Hosting
Jeder Workspace betreibt seine eigene Supabase-Instanz, Slack-App und GIF-Provider-API-Keys – nichts wird zwischen Workspaces geteilt.


