DEV Community

Cover image for SlothTriage โ€” How I Used Gemma 2 & MongoDB to Stop Crying Over 50 Unread Slack Pings ๐Ÿฆฅ
Ankit Kumar
Ankit Kumar

Posted on

SlothTriage โ€” How I Used Gemma 2 & MongoDB to Stop Crying Over 50 Unread Slack Pings ๐Ÿฆฅ

Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady Submission ๐Ÿฆฅ

This is a submission for the Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady


๐Ÿ›‘ The Monday Morning Tragedy: 50 Pings and 0 Will to Live

Picture this:

Itโ€™s Monday morning. You just brewed a glorious cup of fresh coffee. You open your laptop ready to build the future... and BAM:

  • ๐Ÿ”ด 47 unread Slack messages across 6 channels.
  • โœ‰๏ธ 19 email threads with titles like "Quick sync???" (it is never quick).
  • ๐Ÿค– 12 bot notifications letting you know a staging deploy passed at 3:14 AM.
  • ๐ŸŒฎ A 20-message debate in #general about whether pineapple belongs on tacos.
   โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
   โ”‚             THE DEVELOPER DREAD LOOP                   โ”‚
   โ”‚                                                        โ”‚
   โ”‚   [ 80 Unread Messages ] โ”€โ”€โ–บ [ Open Slack in Panic ]   โ”‚
   โ”‚            โ–ฒ                            โ”‚              โ”‚
   โ”‚            โ”‚                            โ–ผ              โ”‚
   โ”‚     (Pretend to be AFK)        [ Read 2,000 Words      โ”‚
   โ”‚            โ–ฒ                     of Pure Noise ]       โ”‚
   โ”‚            โ”‚                            โ”‚              โ”‚
   โ”‚   [ Die a Little Inside ] โ—„โ”€โ”€ [ Spend 45 Mins Typing   โ”‚
   โ”‚                                 "Sounds good, thanks!" ]โ”‚
   โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
Enter fullscreen mode Exit fullscreen mode

Reading 2,000 words of chatter isn't the painful part.

The Drafting Tax is. Formulating polite, professional replies when your soul has already left your body is what destroys your morning.

So in honor of International Sloth Day and Hacktoberfest's "Slow and Steady" challenge, I took inspiration from nature's ultimate energy conservation expert: The Sloth ๐Ÿฆฅ.

Sloths don't sprint to answer every ping in the jungle. They hang from trees, sleep 18 hours, and only move when it actually matters.

Meet SlothTriage โ€” the zero-effort async cognitive buffer for exhausted developers.


๐Ÿฆฅ What I Built

Drop any chaotic wall of textโ€”Slack threads, email digests, Discord chats, or issue notesโ€”into SlothTriage. In 5 seconds, Google Gemma 2 filters it into 3 clean buckets and calculates your "Lazy Payoff":

                       [ Chaotic Text Dump ]
                                 โ”‚
                                 โ–ผ
                     [ ๐Ÿง  Google Gemma 2 27B ]
                                 โ”‚
         โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
         โ–ผ                       โ–ผ                       โ–ผ
 ๐Ÿ”ด [ ACT BUCKET ]       ๐ŸŸก [ PARK BUCKET ]     ๐ŸŸข [ COMPOST BUCKET ]
 Real decisions only     FYI reading only       Zero-value banter
 + 1-Click Copy replies! + Saved in MongoDB     Pruned from existence!
Enter fullscreen mode Exit fullscreen mode
  1. ๐Ÿ”ด ACT (High Priority): Items that actually require a human brain. Gemma pre-drafts polite, context-aware responsesโ€”just click "Copy Reply" and paste it straight back to your boss.
  2. ๐ŸŸก PARK (Informational): Low-urgency updates (AWS S3 price changes, database maintenance). Summarized in one sentence with tags (#aws, #billing) and saved to MongoDB Atlas.
  3. ๐ŸŸข COMPOST (Pure Noise): Lunch polls, taco debates, bot spam, and coffee invites. Pruned into digital fertilizer with an audit reason so you know why it was ignored.
  4. โšก The "Lazy Payoff" Metric: Tells you exactly how much life you just saved:
    • Words Avoided: How much fluff you didn't have to read.
    • Minutes Reclaimed: Reading time saved + 3 minutes saved per pre-drafted reply.

๐Ÿš€ Demo & Links

๐Ÿฆฅ SlothTriage โ€” The Async Cognitive Buffer That Eliminates Communication Dread

The Intelligent 3-Bucket Communication Buffer for Developers & Remote Workers
Drop unformatted Slack threads, email backlogs, and noisy chat dumps into a zero-effort triage canvas. Automatically separate high-priority actions with pre-drafted replies from parked references and composted noise.

GitHub Repo Next.js Google Gemma AI MongoDB Atlas Tailwind CSS shadcn/ui License: MIT


๐Ÿš€ Repository & Live Application


๐Ÿ“Œ Problem Statement: The Communication Dread Dilemma

Remote engineers, tech leads, and freelancers experience chronic cognitive fatigue from accumulating unread communications. Returning from deep work or a weekend to 60 unread Slack messages, 25 email chains, and CI/CD alert spam induces genuine communication dread:

  • Signal Buried in Fluff: Urgent staging incident reports sit right next to food truck chatter and bot pings.
  • Context Switching Paralysis: Reviewing raw backlogs drains valuable focus before writing a single line of code.
  • The Drafting Tax: Theโ€ฆ

๐Ÿง  How It Works Under The Hood

sequenceDiagram
    autonumber
    actor Dev as ๐Ÿฆฅ Exhausted Dev
    participant UI as ๐Ÿ–ฅ๏ธ Next.js Canvas (slothtriage.vercel.app)
    participant API as โšก /api/triage
    participant AI as ๐Ÿง  Gemma 2 27B (OpenRouter)
    participant DB as ๐Ÿƒ MongoDB Atlas

    Dev->>UI: Dumps 1,500-word Slack thread & clicks "Perform Sloth Triage"
    UI->>API: POST /api/triage
    API->>AI: "Extract ACT, PARK, COMPOST and write 1-click replies"
    AI-->>API: Clean, structured JSON buckets
    API->>DB: Save session, metrics, and tags
    API-->>UI: Return session data
    UI->>Dev: ๐ŸŽ‰ Confetti burst! Shows Lazy Payoff (~14m saved) + 1-click replies
    Dev->>UI: Clicks "Copy Reply" -> Pastes in Slack in 2 seconds

1. Google Gemma 2 27B (google/gemma-2-27b-it)

Gemma 2โ€™s open weights are ridiculously good at distinguishing critical blockers ("Staging webhook key is broken") from harmless chatter ("Who wants boba at 2 PM?"). We built an automatic fallback to gemma-2-9b-it and gemma-3-12b-it so your triage never fails even if rate limits hit.

2. MongoDB Atlas Document Store

Every triage session is indexed in MongoDB Atlas (slothtriage.sessions). You get a searchable Archive (/archive) to find parked links later and an Analytics Dashboard (/analytics) showing your cumulative hours reclaimed.

3. Next.js 16 + Tailwind v4 + shadcn/ui

Features a persistent Light/Dark theme toggle, interactive Recharts, and a mobile Sheet drawer for when you need to triage emergencies from your phone while lying in bed like a true sloth.


๐ŸŒ Why Open Source AI Matters Here

  1. ๐Ÿ”’ Your Slack Secrets Stay Yours: You shouldn't feed company incident logs, API secrets, or confidential client chats into closed corporate models that train on your data. Gemma's open weights mean you can run this privately.
  2. ๐Ÿ’ธ Micro-SaaS Economics: Closed models charge high token fees for 3,000-word chat dumps. Open-weight Gemma costs fractions of a cent, making a $5/month developer tool sustainable.
  3. โšก Zero Hallucination Fluff: Gemma sticks strictly to our JSON schema without apologizing or adding weird conversational filler.

๐Ÿ’ฌ Real User Feedback

"I ran SlothTriage on a 75-message Slack thread after a 4-day weekend. It found the 2 actual action items, drafted my replies, and composted 18 memes. I replied to my team in 30 seconds and went back to my coffee. 10/10."

โ€” Senior Backend Dev


๐ŸŽฏ The Sloth Manifesto ๐Ÿฆฅ

Speed is not the same as velocity. Typing "Thanks, looking into it!" to 40 people doesn't make you productive; it just makes you tired.

Stop drowning in red notification badges. Drop your backlog into SlothTriage, take a deep breath, and move slow and steady! ๐Ÿฆฅ

Top comments (0)