Skip to content

Learn how to make useful Slack Apps with features such as polling, language translation, and event reminders using the Slack API, Bolt JS, and JavaScript.

Notifications You must be signed in to change notification settings

FifiTeklemedhin/Bitcamp-Slack

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bitcamp: Slack

Overview:

In this Bitcamp, Bit Project partners with Slack to teach students how to make useful Slack Apps using the Slack API, Bolt Framework, JavaScript, and 3rd Party APIs. Slack is a channel-based messaging platform widely used in the industry. Slack Apps are extensions to your Slack workspace that allow you to interact, connect, and work more efficently. Some examples of popular slack apps include Google Calendar for Team Events, Paymo, Slack Scheduler, and Simple Poll. Throughout the 6-weeks, students will learn everything from creating their first Slack App to integrating 3rd Party APIs like Google Calendar with their Slack App. At the end of the Bitcamp, students will know the in and outs of the Slack API allowing them to create fully-functional and practical Slack Apps of their own.

Timeline:

A week by week guidline of the skills and topics covered in each individual week. The format for this Bitcamp includes a livestream, hosted by mentors and Slack engineers, and homework, assigned tasks through a Github Learning Lab.

Week 1: Getting Started with Slack API


Livestream

In the Livestream Portion of Week 1, students will be introduced to the basics of the Slack API, including what a slack app is, how it is used in the industry, and the basics of creating their first app. During the livestream for this week, topics such as the Bolt Framework (here), Node JS, permissions/scopes, and a brief introduction of events and listeners will be discussed. As well, a basic slack app will be created that simply listens to a message in a specific channel, and responds to the user with a given message.

Homework

In the Homework Portion of Week 1, students will continue to advance the skills taught during the livestream through a guided Github Learning Lab. Students will browse the Slack API documentation, experiment with events and listeners, assign permissions/scopes, and further learn response functions like message() and say(). Doing so, they will have a final assignment of creating a similar slack app (to the livestream) that responds to an event rather than a message.

Week 2: Introduction to Shortcuts, Modals, and BlockKit


Livestream

In the Livestream Portion of Week 2, students will work with new topics like shortcuts, modals, and BlockKit. Students will use skills from the previous week such as scopes/permissions and listeners to further progress their understanding. During the livestream for this week, students will build a polling Slack App using a shortcut-triggered modal (using a shortcut listener and poll shortcut from api.slack.com), BlockKit to accept user input/view building, and a ViewSubmission listener to post the poll and receive emoji responses.

Homework

In the Homework Portion of Week 2, students will continue to advance the skills taught during the livestream through a guided Github Learning Lab. Students will focus on BlockKit (found here) and explore the UI framework by creating more complicated messages that change and work with user input. As well, students will strengthen their understanding of modals by experimenting with different modal blocks and views. At the end of the week, students will be tasked to create a simple Slack App that uses the skills learned in week 2 (shortcuts, modals, and BlockKit) in a creative way to recieve and respond to user input.

Week 3: Integration with Google Translate API


Livestream

--

Homework

--

Week 4: Events and Reminders with Google Calendar API


Livestream

--

Homework

--

Want to apply? Go to bitproject.org to learn more.

About

Learn how to make useful Slack Apps with features such as polling, language translation, and event reminders using the Slack API, Bolt JS, and JavaScript.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%