This is a generic Bolt for JavaScript (TypeScript) template app used to build out Slack apps with the Nitro framework.
This is a generic Bolt for JavaScript (TypeScript) template app used to build out Slack apps with the Nitro framework.
npm install -g pnpm
Create a Slack App
slack create --template https://github.com/vercel-partner-solutions/slack-bolt-nitro-template.git
*Paste your manifest code here*
(within the JSON tab) and click Next.env
file under SLACK_SIGNING_SECRET
..env
file under SLACK_BOT_TOKEN
.slack app link
Local
when promptedhooks.json
file under /.slack/hooks.json
and add a start
hook:
{"hooks": {"get-hooks": "npx -q --no-install -p @slack/cli-hooks slack-cli-get-hooks","start": "pnpm dev"}}
config.json
file under /.slack/config.json
and update your manifest source to local
.
{"manifest": {"source": "local"},"project_id": "<project-id-added-by-slack-cli>"}
Start your local server with automatic tunneling using the pnpm dev:tunnel
command. You can also use the generic slack run
command if you do not want automatic tunneling and manifest updates. If prompted, select the workspace you'd like to grant access to. Select yes
when asked Update app settings with changes to the local manifest?.
Open your Slack workspace and add your new Slackbot to a channel. Send the message hi
and your Slackbot should respond with hi, how are you?
.
*Paste your manifest code here*
(within the JSON tab) and click Next and CreateSLACK_SIGNING_SECRET
SLACK_BOT_TOKEN
in the environment variables dropdown/api/events
path is preservedmanifest.json
manifest.json
is a configuration for Slack apps. With a manifest, you can create an app with a pre-defined configuration, or adjust the configuration of an existing app.
/src/app.ts
app.ts
is the entry point of the application. This file is kept minimal and primarily serves to route inbound requests.
Every incoming request is routed to a "listener". Inside this directory, we group each listener based on the Slack Platform feature used, so /listeners/shortcuts
handles incoming Shortcuts requests, /listeners/views
handles View submissions and so on.
/src/server
This is your nitro server directory. Inside you have an api
folder that contains a events.post.ts
file. This matches the request URL's defined in your manifest.json
file. Nitro uses file based routing for incoming requests. You can learn more about this here.
This is a generic Bolt for JavaScript (TypeScript) template app used to build out Slack apps with the Nitro framework.
This is a generic Bolt for JavaScript (TypeScript) template app used to build out Slack apps with the Nitro framework.
npm install -g pnpm
Create a Slack App
slack create --template https://github.com/vercel-partner-solutions/slack-bolt-nitro-template.git
*Paste your manifest code here*
(within the JSON tab) and click Next.env
file under SLACK_SIGNING_SECRET
..env
file under SLACK_BOT_TOKEN
.slack app link
Local
when promptedhooks.json
file under /.slack/hooks.json
and add a start
hook:
{"hooks": {"get-hooks": "npx -q --no-install -p @slack/cli-hooks slack-cli-get-hooks","start": "pnpm dev"}}
config.json
file under /.slack/config.json
and update your manifest source to local
.
{"manifest": {"source": "local"},"project_id": "<project-id-added-by-slack-cli>"}
Start your local server with automatic tunneling using the pnpm dev:tunnel
command. You can also use the generic slack run
command if you do not want automatic tunneling and manifest updates. If prompted, select the workspace you'd like to grant access to. Select yes
when asked Update app settings with changes to the local manifest?.
Open your Slack workspace and add your new Slackbot to a channel. Send the message hi
and your Slackbot should respond with hi, how are you?
.
*Paste your manifest code here*
(within the JSON tab) and click Next and CreateSLACK_SIGNING_SECRET
SLACK_BOT_TOKEN
in the environment variables dropdown/api/events
path is preservedmanifest.json
manifest.json
is a configuration for Slack apps. With a manifest, you can create an app with a pre-defined configuration, or adjust the configuration of an existing app.
/src/app.ts
app.ts
is the entry point of the application. This file is kept minimal and primarily serves to route inbound requests.
Every incoming request is routed to a "listener". Inside this directory, we group each listener based on the Slack Platform feature used, so /listeners/shortcuts
handles incoming Shortcuts requests, /listeners/views
handles View submissions and so on.
/src/server
This is your nitro server directory. Inside you have an api
folder that contains a events.post.ts
file. This matches the request URL's defined in your manifest.json
file. Nitro uses file based routing for incoming requests. You can learn more about this here.