So you want to build a Slack app with Node.js? We’ve got you covered. Slack Developer Kit for Node.js is aimed at making building Slack apps ridiculously easy. This package will help you build on all aspects of the Slack platform, from dropping notifications in channels to fully interactive bots.
This package supports node starting from major version 0.12 and later. It’s highly recommended to use the latest LTS version of node, and the documentation is written using syntax and features from that version.
Use npm to install the package and save it to your package.json
:
$ npm install @slack/client
The Slack platform offers several APIs to build apps. Each API delivers part of the capabilities from the platform, with a range of complexity and functionality, so that you can pick the one that fits for your app.
Slack API | Outgoing | Incoming | NPM Package | Documentation |
---|---|---|---|---|
Web API | ⬆️ | ⬜️ | @slack/client |
Guide |
RTM API | ⬆️ | ⬇️ | @slack/client |
Guide |
Incoming Webhooks | ⬆️ | ⬜️ | @slack/client |
Guide |
Events API | ⬜️ | ⬇️ | @slack/events-api |
README |
Interactive Messages | ⬜️ | ⬇️ | @slack/interactive-messages |
README |
Just starting out? We suggest starting at the Getting Started guide which will walk you through building your first Slack app using Node.js.
Not sure about which APIs are right for your app? Read our helpful blog post that explains and compares the options. If you’re still not sure, reach out for help and our community can guide you.
You’ll notice that some of the API tools are not included in the @slack/client
package.
This reflects the fact that those tools function as HTTP servers, whereas this package contains
the tools which function as HTTP clients. Separating these packages gives you the flexibility to
only depend on the parts that fit into your app.
If you’re looking for an all-in-one solution that hides the underlying Slack APIs, but simplifies building a bot-style app inside Slack, try the Hubot Slack adapter. This framework is popular for internal apps that automate workflows, ChatOps, and silly meme generating bots.
If you get stuck, we’re here to help. The following are the best ways to get assistance working through your issue:
developers@slack.com