You are browsing as a guest. Sign up (or log in) to start making projects!

My first slack bot!

  • 3 Devlogs
  • 3 Total hours

This bot isn't slacking off, it replies to messages 24/7!

Ship #1 Changes requested

I built a feature-packed upgrade to the Slack Bot (Slacky Wacky) featuring:

  1. SQLite Conversational Memory for multi-turn chats.
  2. Slack Block Kit UI elements for interactive responses.
  3. A beautiful, minimal live web dashboard on Nest displaying API latency, uptime, database size, command usage, and system logs.
  4. Multimodal vision support (Groq Llama 3.2 11B Vision) to automatically analyze images uploaded to the channel.

What was challenging: Correctly escaping client-side template literals embedded inside server-side backticks so they render correctly in the browser.
What I’m proud of: Delivering a extremely clean, professional dashboard without typical AI dashboard hype.

Try project → See source code →
Open comments for this post

49m 27s logged

I successfully built and deployed a massive upgrade to Slacky Wacky, adding four powerful new features! Here is exactly how I implemented them:

  1. Conversational Memory:
    I used better-sqlite3 to set up a lightweight database. When a user asks a question, the bot retrieves their last 10 messages so the Groq API has multi-turn context:
const db = new Database('chat_history.db');
db.exec(\`
  CREATE TABLE IF NOT EXISTS messages (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    user_id TEXT,
    role TEXT,
    content TEXT
  )
\`);
function getHistory(userId) {
  return db.prepare('SELECT role, content FROM messages WHERE user_id = ? ORDER BY id DESC LIMIT 10').all(userId).reverse();
}
  1. Block Kit UI:
    I refactored all responses into structured Slack Block Kit elements for a much cleaner look:
await respond({
  blocks: [
    {
      type: "section",
      text: { type: "mrkdwn", text: \`*Answer:*\\n\${groqAnswer}\` }
    }
  ]
});
  1. Live Web Dashboard & Reverse Proxy:
    I integrated an Express server into index.js to log system metrics and API latency in real time. I then configured a custom reverse proxy domain (sandeepkurma.hackclub.app) inside the dashboard pointing to target port 3000:
app.get('/', (req, res) => {
  res.send(\`<h1>Slack Bot Live Dashboard</h1><p>Latest Latency: \${latestLatency} ms</p>\`);
});
  1. Multimodal Image Support:
    I added logic to check for image file extensions (jpg, png, etc.) in the user’s message. If found, the bot automatically switches the model to `llama-3.2-11b-vision-preview` and formats the request content structure:
const modelToUse = containsImage ? 'llama-3.2-11b-vision-preview' : 'llama-3.3-70b-versatile';

Everything is fully verified, tested, and running 24/7 on my container!

0
0
2
Open comments for this post

40m logged

I rigorously tested the active slash commands in Slack. All of them are running successfully on Nest 24/7!Tested:- /slacky-wacky-help -> Lists the commands and their usage successfully.- /slacky-wacky-fact -> Returns a random mind-blowing fun fact.The bot handles everything asynchronously using Socket Mode, and the responses are extremely fast! Everything is ready and fully verified.

0
0
1
Open comments for this post

1h 6m 11s logged

I built Slacky-Wacky, a fully custom Slack bot powered by the Llama 3.3 model from Groq! The bot handles interactive Slash commands through Socket Mode including:- /slacky-wacky-ask - An AI Q&A assistant to query Llama 3.3.- /slacky-wacky-status - Check system/bot status.- /slacky-wacky-help - Provide clear usage directions.- /slacky-wacky-joke - Tell funny developer jokes.- /slacky-wacky-fact - Share mind-blowing science & history facts.- /slacky-wacky-define - An interactive dictionary command.I resolved integration quirks like Bolt channel requirements, configured SSH keys for Nest, and successfully logged over 1 hour of development time to Hackatime!

0
0
1

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…