Devlog: FridgeChef AI — Version 1.5.0 (Interactive & Socket Mode Update) ⚡🤖
Date: July 7, 2026
Developer: Aleena Wariya
Tech Stack: Node.js, Express, Slack Bolt SDK, Groq Cloud API (Llama 3.3)
📝 OverviewVersion 1.5.0 marks a massive architectural and interactive overhaul for FridgeChef AI.
We transitioned the entire app from a simple text-response model into a consolidated, highly interactive hub system using Slack’s Socket Mode, Block Kit, Modals, and Actions. This devlog covers the details of this release, the challenges resolved, and how we streamlined the user experience.
🚀 Key Features Implemented in v1.5.0### 1. Shift to Slack Socket Mode (No Tunnels Needed!)
-
WebSocket Integration: Refactored
app.jsto initialize Bolt usingsocketMode: trueand an App-Level Token (xapp-). -
Developer Experience: The bot now connects directly to Slack using web sockets. This completely eliminates the need for public webhook tunnels (like ngrok or tunnelmole) during local development.
-
Express Compatibility: Maintained a parallel Express server listening on
PORTto return200 OKon health routes, keeping the app compatible with cloud hosting deployment checks (like Render).
2. Consolidated 3-Command ArchitectureTo prevent cluttering the Slack app settings with dozens of commands, we consolidated all features into 3 Main Interactive Portals:
-
/fridgecook— The Recipe Hub: -
Integrates baking, smoothies, kid-friendly meals, air fryer recipes, and party sizes.
-
Adds a Leftover Optimizer checkbox that prompts the Groq API to creatively combine odd ingredients.
-
Dynamically queries your saved inventory if run with no arguments.
-
/fridgehealth— The Wellness Hub: -
Displays a personalized dashboard showing daily water progress, calorie logs, and active allergies.
-
Adds quick-click buttons to log water (
+250ml,+500ml), reset stats, and search healthy substitutes. -
Includes a Vitamin Fridge Audit analyzing your pantry list for mineral deficiencies.
-
/fridgeinventory— The Pantry & Shopping Hub: -
Renders a dashboard displaying your current stock, items in the freezer, and expiration warnings.
-
Integrates Expiration Reports (categorizing items into Expired, Expiring, and Fresh) with quick-discard buttons.
-
Integrates Fridge Audits which prompt users to verify if older ingredients have been eaten.
-
Handles Food Share Alerts with a
🍴 I want this!claiming system.
3. In-Slack Help System (/fridgehelp)
- Implemented a user guide directly inside Slack. Run
/fridgehelpto get a clean, ephemeral Block Kit manual outlining all the features and tricks of the 3 portals.
🛡️ Challenges & Bug Fixes
1. DM & Private Channel channel_not_found Error
-
Problem: Triggering commands or clicking buttons in DMs or private channels where the bot wasn’t added caused
channel_not_founderrors when the bot tried to post messages. -
Solution: Implemented a fail-safe routing wrapper that detects DM channel prefixes (
D...) and automatically routes the messages to the User’s ID (U...). Slack automatically maps User ID targets to the appropriate private DM conversation.
2. Slack Message Scoping message_not_found Error
-
Problem: Updating messages in DMs using
chat.updatethrewmessage_not_foundbecause the bot attempted to update using the User ID target instead of the mapped DM channel ID. -
Solution: Updated the message updater to target
infoMessage.channel(the actual channel ID returned by Slack’s post response) instead of the inputchannelId.
🎨 Release Graphic
- A v1.5.0 release banner has been created to celebrate this release, featuring a modern, dark-themed dashboard look matching the new interactive wellness and pantry screens.
Comments 0
No comments yet. Be the first!
Sign in to join the conversation.