Skip to main content

Community-developed tools

This is a large, but definitely not complete, collection of open source community-developed tools.

If you've built your own Slack library, plugin, or open source app, please get in touch and we'll add it to this list.

Here are some particularly popular libraries supporting Slack platform functionality.

LibraryLanguageDescription
SlackAPIC#This library supports the Web and RTM APIs, but what's really sharp is that it supports wrangling access tokens with OAuth 2.0.
slackGoGo ahead and code Slack bots and Web API clients with this library supporting the Web API and RTM APIs. Oh, and we love the Slack gophers!
slack-clientJavaHubSpot's carefully crafted, extensible Java wrapper around the Slack Web API includes robust rate limit handling.
BotkitJavaScriptUse this handy bot framework from Howdy to quickly build conversational bots, for your Slack workspace and others.
BotManPHPA framework agnostic PHP library that is designed to simplify the task of developing innovative bots.
slack-php-apiPHPThis PHP interface for the Web API is powered by our OpenAPI specification.
slack-app-frameworkPHPThis modern PHP-based library is inspired by the Slack Bolt framework.
slackerPythonPython enthusiasts love this popular Slack API wrapper, with support for negotiating tokens using OAuth 2.0.
slack-ruby-botRubyThis lovingly documented framework can be used to create bot users with Ruby.
slack-ruby-clientRubyWrite expressive Ruby code for Slack bots and APIs that's "right on" and real time.
slack-ruby-bot-serverRubyWrite a complete Slack bot service using Ruby, complete with the "Add to Slack" button.

Here's the full list, sorted by language!

C

  • PebbleSlack - A Slack app for Pebble
  • SlackRtm - A C library for interacting with the Slack RTM API

C++

  • engine - A modern C++ library for building Slack-enabled applications
  • matterbot - A native Mattermost/Slack bot framework
  • slacking - C++11 library for communicating with the Slack Web API
  • SlackRtm - Primitive library to access the Slack RTM API

C# / .NET

  • Slack.NetStandard - .NET core package for working with OAuth, Events API, Web API, and interactivity.
  • Cake.Slack - Cake AddIn that extends Cake with Slack messaging features
  • CCNetSlackPublisher - Slack integration with CruiseControl.NET
  • Log4Slack - Simple, asynchronous Slack log4net appender
  • margiebot - A .NET library designed to make building bots for Slack fast, easy, and fun
  • mmbot - a C# port of hubot, with Slack support
  • noobot - An extensible Slack bot built for C#
  • Selenium-storage-provider - Post your Selenium screenshots to Slack
  • Slack-Contour - Umbraco Contour workflow item that allows you to post the form data to a Slack channel
  • slack-library-.net - Slack client library written in C#
  • Slack.Webhooks - Even simpler integration with Slack Incoming / Outgoing webhooks
  • SlackAPI - Full Slack API library, including WebSockets
  • SlackCommander - Useful (?) Slash Commands and miscellaneous integrations for Slack
  • SlackConnector - A simple connector for the Slack API
  • SqlServerSlackAPI - A SQL Server CLR assembly for direct communication with Slack via TSQL
  • svn-slack-notifier - A simple app to send VisualSVN Server commit notifications to Slack
  • TfsNotificationRelay - A plugin for TFS 2013 that sends notifications to Slack
  • TSJ.Gemini.Slack - Posts issue changes to a channel in Slack
  • WooCode.Slack - Library for slacking with Slack.com in .Net
  • workfront-to-slack - Checks for updates from a workfront team and pushes them to a Slack channel

Clojure

  • clj-slack - Use Slack REST API from Clojure
  • clj-slack-client - A Clojure client for the Slack RTM and Web APIs
  • clj-slack-sql - Post SQL Statements results to Slack channels (JDBC)
  • lunch-bot - A Slack bot that manages group lunch activities
  • markov-chainz - A Markov chain bot written in Clojure
  • slack-bot - Clojure Heroku Bot
  • slack-hooks - Papertrail's collection of webhook receivers for Slack
  • slack.clj - Example of sending a message to Slack from Clojure
  • slacks - Deliver quotes to a Slack channel
  • veyeslack - Little Veye command-center for Slack
  • Surfs - A library aiming to make creating Slack surfaces enjoyable.

CoffeeScript

Dart

Elixir

  • elixir-slack - Slack RTM and Web API client in Elixir
  • elkarmo - Slack karma bot written in Elixir
  • slackex - Elixir Slack API Client

Erlang

  • slacker - Erlang Slack REST API wrapper

Go

  • amiando-slack - Push Amiando ticket sales to Slack
  • annona - A service for posting anonymous messages to a Slack channel
  • anonymous-slack - A service you can run on Heroku to send anonymous messages to colleagues
  • arriba - A Slack bot for asynchronous stand-ups
  • bot - IRC, Slack, and Telegram bot written in Go
  • circle2slack - Proxy CircleCI webhooks to Slack
  • enotify-slack - A tool to get event information and send it to Slack
  • Flippy - Flippy is a Slack webhook responder that flips tables and text
  • gdrive2slack - Frictionless integration between Google Drive and Slack
  • hal - A chat bot in Go
  • hanu - Go Framework for writing Slack bots
  • hipchat-notifications-to-slack - forward notifications from HipChat to Slack
  • marvin - Slack bot written in Go
  • phoenix - Pluggable bot for Slack
  • relax - Bots-as-a-Service for Slack
  • rmslack - Purge a slack channel of all messages
  • slack - Slack API in Go
  • slack_auth_proxy - A reverse proxy providing authentication via a slack.com team
  • slack-cli - A command tool to communicate with Slack
  • slack-fingerbumpbot - A bot for Slack that never leaves a finger bump hanging
  • go-slackjira - JIRA issue name expander for Slack
  • slack-markov - A markov chain bot for your Slack channel
  • slack-oldbot - A bot for Slack that politely reports when a link has been used before in the channel
  • slack-redmine-bot - Redmine issue name expander for Slack
  • slack-upvote - Slack voting integration
  • slackbot - A silly little slackhq robot
  • slackbot (II) - Framework for building Slash Commands for Slack
  • slackcat - Post messages to Slack from the command line
  • slacker-news - Slack integration that reports current news items
  • slackhook - Simple Go client for Slack Incoming WebHook API
  • slackline - Create a Slack channel shared by two organizations
  • slackline-gae - Google App Engine app to share channels between Slack accounts
  • SlackMS - SMS your workspace channel in Slack
  • slackposter - Post a message to your Slack incoming webhook
  • slackrus - Slack hook for Logrus
  • slacktogo - Slack Integration Server for distributing channels between different Slack teams
  • slclogger - Simple Slack Client for logging written in Go
  • subtleist - Anonymously remind of subtle-isms and other Recurse Center social rules in Slack
  • webhook - Easily run commands in response to HTTP webhook requests from Slack

Groovy

  • slack-ozfindbiz - Outgoing WebHook Integration to search for Australian businesses and POIs

Haskell

  • hi5bot - Get and give high-fives on Slack
  • jpgtobot - jpg.to bot for Slack
  • slack - A Haskell client for the Slack web API

Java

JavaScript

Lua

  • breezBot - Air quality index bot for Slack using the breezometer API
  • Lua Slack - A Lua Slack API wrapper
  • lubot - Lua Chatbot running inside OpenResty
  • uberSlackBot - Get Uber price estimates directly in Slack

Matlab

  • SlackMatlab - Basic integration for Slack notifications for Matlab

OCaml

  • slacko - A neat interface for Slack

Perl

  • slack-integrations - Scripts to integrate Slack with subversion and nagios
  • slappyhour - A CGI script to bridge a channel between multiple Slack instances

PHP

PowerShell

Python

  • asterisk-slack - Publishes Asterisk call information to Slack
  • blockkit - a library for building UI interfaces for Slack apps, with its own website that allows you to paste a JSON payload from Block Kit Builder and obtain the corresponding Python code
  • butterfield - Python Slack bot framework using asyncio and Slack RTM API
  • changetip-slack - ChangeTip Slack Tip bot
  • cleverme - A Slack app to communicate with Cleverbot
  • django-slack - Slack integration for Django, using the templating engine to generate messages
  • django-slack-oauth - Slack OAuth module for Django
  • django-slack-utils - Verify request signatures from Slack in your Django app
  • ellie-slack - Eliza's younger, hipper, psychobabble-friendly successor as a Slackbot
  • err - A plugin-based chatbot designed to be easily deployable, extensible and maintainable
  • facebook-slack-integration - Receive a message in Slack from new Notifications and Messages received on Facebook.
  • flask-slack - Flask extension which makes it easy to interact with Slack Slash Commands
  • flask_slackbot - flask_slackbot helps you deal with slack outgoing webhooks
  • fs-slack - Silly slash command synthesis for Slack
  • gae-slack-bot - Python Slack bot example running on Google App Engine and subscribing to Slack events via Events API
  • gmail2slack - Send a Slack notification whenever a new gmail arrives
  • limbo - A simple, clean, easy-to-modify Slack chatbot
  • morgenbot - A standup bot for Slack
  • mqttwarn - Notify Slack from MQTT
  • openduty - An open source alerting and incident escalation tool
  • py-ssj - A slash command for JIRA server interactions
  • pyslack - Python API Wrapper
  • python-rtmbot - A Slack bot written in Python that connects to the RTM API
  • python-slack.com - Python classes for integrating with Slack
  • python-slackclient (pypi) - A basic client for Slack, which can optionally connect to the RTM API
  • reach-slack-rtm - Simple Slack RTM chat built with ReactJS and Django
  • relay - Bare-bones continuous integration using Docker Hub and Slack
  • rtfmbot - Because we're all tired of answering questions when people should clearly RTFM
  • scudcloud - Ubuntu client for Slack
  • slack - A simple and comprehensive Slack API client
  • slack-echo-chamber - Crosspost messages from one channel into another
  • slack-imgur - A random image from Imgur to Slack
  • slack-irc-bouncer - A slack RTM client that relays messages between an IRC bouncer and slack
  • slack-overflow - Search Stack Overflow right from within Slack
  • slack-pyblock-builder - An easy way to construct your UI using Block Kit
  • slack_standup_snitch - A Slack bot that counts the days each user was active on a channel, calling out the inactive users
  • slack-w3w - Slack Webhook for linking to What3Words
  • slack-zenoss - A Slack incoming webhook to show events from Zenoss
  • slackard - A bot for Slack
  • slackbot - A chat bot for Slack
  • slackbot-python - A Slack.com bot in Python integrated with Amazon SQS
  • slackbridge - Bridge Slack channels between companies
  • slackcmd - A Python script for piping output from the command line to a Slack channel
  • slackcraft - Slask based WoW bot for Slack
  • slacker - Slack API Wrapper for Python
  • slacker (II) - Python project to enable use of aa_macro.py within Slack channels
  • slacker-cli - Messages to slack from the command line
  • slackfred - Interact with Slack via Alfred
  • SlackLaTeXBot - LaTeX bot that responds to Slack slash commands
  • slackotron - A Slack bot customizable via plugins
  • slackpy - Slack client library for specific logging
  • slacksocket - Python interface to the Slack RTM API
  • slactorbot - A slack bot that uses lightweight actors and dynamic module imports for plugins
  • slappd - A Slack integration for Untappd
  • slouch - Lightweight Python framework for building cli-inspired Slack bots
  • socialbot - Bot that publises links from Slack to social networks
  • StackStorm Slack Pack - Pack which allows integration with Slack service.
  • stock-quote-slackbot - Slackbot that retrieves stock quotes from Yahoo Finance for a given ticker symbol
  • sublime-slack-integration - Post to Slack from Sublime Text 3
  • Summarize It! - Summarize It is a chat summarizer plugin for instant messaging applications built on top of Slack.
  • SURGE911bot - An emergency contact info bot to help remote employees in an emergency
  • sync_slack - BitTorrent Sync sample integration
  • tracslack - Trac notifications for Slack
  • webhook-bridge - micro-service to convert webhook POST formats including Slack
  • wee-slack - A WeeChat plugin for Slack

R

  • slackr - A package to send webhook API messages to Slack channels/users from R

Ruby

Rust

  • rust-slack - A rust crate for sending messages to Slack via webhooks.

Scala

  • Slack Morphism for Scala - A type-safe reactive client supporting most Slack app features like Block Kit and the Events API.
  • slack-client - An library released by Kifi, supporting Slack app authentication, incoming webhooks, and the web API
  • scala-slack - A Slack client for Scala
  • slack-scala-client - A Scala Slack client for the Web and RTM API

Shell

Swift

  • SlackKit - Slack client library for iOS and OS X written in Swift

Tcl

Zephir

  • zephlack - Slack Messaging extension written in Zephir

Other Services & Tools

This is a list of bots, plugins, and other tools that are available to work in conjunction with third-party services and tools.

Estimote Beacons

These open source repositories can be used to integrate with Estimote beacons.

WordPress

Other tools

  • Atlassian Stash - Send notifications to a Slack channel when a repo push occurs
  • Looker - The Lookerbot for Slack makes it easy to bring data from Looker into every Slack conversation
  • slack (Drupal) - Send messages from a Drupal website to Slack
  • slack-chat (Drupal) - Allow your visitors to send instant messages from your website to your Slack account
  • Slack Message Builder - A tool for previewing how JSON payloads translate to Slack messages
  • stdlib - A suite of tools helping you rapidly build serverless Slack bots
  • steno - A Slack app testing companion: record and replay your incoming & outgoing HTTP requests
  • Unofficial TeamCity Slack plugin - Send notifications from TeamCity to Slack