Skip to content

Conversation

@haleychaas
Copy link
Contributor

Summary

Moving this workshop to the tutorials of Bolt JS.

See a preview here.

Requirements (place an x in each [ ])

@codecov
Copy link

codecov bot commented Oct 23, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 93.44%. Comparing base (2ff56ee) to head (6b961f9).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2694   +/-   ##
=======================================
  Coverage   93.44%   93.44%           
=======================================
  Files          37       37           
  Lines        7674     7674           
  Branches      669      669           
=======================================
  Hits         7171     7171           
  Misses        498      498           
  Partials        5        5           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Contributor

@technically-tracy technically-tracy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👏

Copy link
Member

@zimeg zimeg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@haleychaas I'm a fan of these writings! Thanks for bringing this to the bolt docs 🤖 ✨

I'm requesting a few changes with changing best practices that we can encourage in app setups I hope. I also made note of blank templates and perhaps sample implementation to reference later. Most comments aren't blocking though I believe! 📚

Initialize a new Node.js project using the following command; answer each question with defaults.

```sh
npm init
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📎 thought: In a follow up I'm wondering if we can start from the blank template to remove configuration to the package.json file?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good callout. I'll create a follow-up task to rework this using the blank template!

main();
```

The code in the `app.js` file initializes the Bolt app using your tokens and signing secret and enables Socket Mode. Next, it defines the `getUselessFact()` function that retrieves a random fact using Axios. It uses the Bolt framework to create a Slack function named `useless_fact_step`. This is the same function we registered in the app manifest previously; the function's name, inputs, and outputs in the code must match with the what is defined in the app manifest. Finally, a function named `main()` is used to start the Bolt app.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The code in the `app.js` file initializes the Bolt app using your tokens and signing secret and enables Socket Mode. Next, it defines the `getUselessFact()` function that retrieves a random fact using Axios. It uses the Bolt framework to create a Slack function named `useless_fact_step`. This is the same function we registered in the app manifest previously; the function's name, inputs, and outputs in the code must match with the what is defined in the app manifest. Finally, a function named `main()` is used to start the Bolt app.
The code in the `app.js` file initializes the Bolt app using your tokens and signing secret and enables Socket Mode. Next, it defines the `getUselessFact()` function that fetches a random fact. It uses the Bolt framework to create a Slack function named `useless_fact_step`. This is the same function we registered in the app manifest previously; the function's name, inputs, and outputs in the code must match with the what is defined in the app manifest. Finally, a function named `main()` is used to start the Bolt app.

👁️‍🗨️ suggestion: We're making "fetch" happen

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@zimeg I'm dead lol

@zimeg zimeg added docs M-T: Documentation work only semver:patch labels Oct 29, 2025
@zimeg zimeg changed the title Docs: Add Bolt JS workshop to tutorials docs: add "random fact generator" custom step workshop to tutorials Oct 29, 2025
@haleychaas haleychaas requested a review from zimeg October 29, 2025 21:25
Copy link
Member

@zimeg zimeg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@haleychaas Thanks for the kind followup! LGTM! 📚 ✨

@haleychaas haleychaas merged commit 98e48a6 into main Nov 4, 2025
19 checks passed
@haleychaas haleychaas deleted the docs-haley-add-workshops-as-tutorials branch November 4, 2025 14:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs M-T: Documentation work only semver:patch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants