Day 4: Building a Slack integration in 2 hours
And I didn't read a single page of the Slack API docs.
I'm documenting my journey into vibe coding as somebody trying to build a business from scratch. Each day I'm sharing what I'm doing and learning to bring accountability and reflection. Read the first post here.
Today I wasn't sure if I was going to have time to do some vibe coding, but at around 4pm inspiration struck. For my project management idea I wanted to play around with a Slack integration, so I thought to myself let’s just see how far I can get in a couple of hours?
The goal: build an app that showed you a feed of recent Slack messages in a channel and automatically summarized those messages using AI.
What I built in just 2 hours
So I dove in, watched a couple of videos of folks who've created Slack integrations (link), fed API docs to Claude and boom—we were off to the races!
Here’s a demo of what I ended up with:
Claude Code is really good at understanding docs
My biggest takeaway is just how good Claude Code is at explaining what you need to do. In one of the videos I watched, the developer had spent a lot of time faffing around with trying to configure OAuth for his Slack integration. That's when he discovered you can use a service called ngrok to set up an HTTP server for authentication whilst developing locally.
The amazing thing is Claude already just knew this. When I asked Claude to plan out the integration, it came up with really clear steps for setting up ngrok as well as all the permissions I would need to set up in the developer portal in slack.
There were definitely times I got stuck on specific things like the scopes needed for the app, but each time I would just ask Claude to repeat the steps from what I just done, and it would personalize the rest based on what I'd already provided.
A few more tactical learnings
I also learned to ask Claude to write out a simple doc with commands for starting and stopping dev servers instead of burning tokens having Claude do that each time.
This was also my first time experiencing Claude Code's compacting feature. It shows you in the bottom right how much context is left until it auto compacts. I didn't notice any drastic quality drop after compaction, but other developers on Twitter have mentioned they've seen the code quality get worse post-compaction.
Documentation is everything with agentic code
I think docs are super critical for working with agentic code, and I really want to work on my best practices around getting Claude to document certain things and automatically update those docs.
Overall I was just blown away that literally in two hours I was able to have a demo with a Slack integration fully hooked up to my actual Slack instance.
And most importantly: I did not need to read a single page of the Slack API 🤯.