Skip to content
A fork of schuyler/gifbot that uses ReactionGifs
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Gifbot is a lightweight Sinatra app that provides Slack with embedded keyword search for animated GIFs, using the ReactionGifs website, and Slack's webhooks integration. Once setup, you can type gif: puppies in your Slack channel, and Gifbot will post a random animated GIF of adorable puppies to the channel.





What better way to celebrate a teammate's bon mot, or to herald a successful code deployment, or announce your imminent departure for lunch?


  • Download Gifbot and run bundle install --path .gems in the gifbot directory. You may need to sudo gem install bundler first.

  • Set up an outgoing webhook migration in Slack using http://host:port/gif as the URL, substituting the host and port that you'll be running the server on. (Unless you tell it otherwise, Sinatra runs on port 4567 by default.) You may opt to configure gif: as the default trigger word for the webhook.

  • Slack will give you an application token for this integration; note it.

  • Edit gifbot.rb and set your SLACK_TOKEN. You must do this or Gifbot will ignore all attempts to communicate.

  • Run ./ on a public webserver, in a screen(1) session, heroku host or something.

  • Type gif: kittens into your Slack chat and voilà.

Are you kidding?

This software took me 20 minutes to write and is released into the public domain. If it breaks, you get to keep all the pieces. Patches welcome, and hugs for everyone.



You can’t perform that action at this time.