@slack-wrench/koa-bolt
TypeScript icon, indicating that this package has built-in type declarations

1.3.0 • Public • Published

Koa Bolt

Use Bolt and Koa together. ⚡️ ❤️ Koa

Koa middleware that wraps the default Bolt 'ExpressReceiver` into a Koa application.

Useful for those who want to use promises in their app middleware and those wanting a little more control over their running application.

Install

# Yarn
yarn add @slack-wrench/koa-bolt

# npm
npm install @slack-wrench/koa-bolt

Usage

import Koa from 'koa';
import { App, ExpressReceiver } from '@slack/bolt';
import koaBolt from '@slack-wrench/koa-bolt';

const signingSecret = process.env.SLACK_SIGNING_SECRET;
const token = process.env.SLACK_BOT_TOKEN;

const receiver = new ExpressReceiver(signingSecret);
const bolt = new App({ receiver, token });
const app = new Koa();

bolt.command(commandName, fn);

app.use(koaBolt(receiver.app));

app.listen('8080');
console.log('⚡️ Bolt app is running!');

Configuration

You can also pass custom endpoints to koaBolt in the same way you do to Bolt.

const endpoints = {
  events: '/custom/slack/endpoint',
};

const receiver = new ExpressReceiver(signingSecret);
const bolt = new App({ receiver, token, endpoints });
const app = new Koa();

app.use(koaBolt(receiver.app, endpoints));

Readme

Keywords

none

Package Sidebar

Install

npm i @slack-wrench/koa-bolt

Weekly Downloads

277

Version

1.3.0

License

Apache-2.0

Unpacked Size

193 kB

Total Files

13

Last publish

Collaborators

  • barlock
  • directctrl