AWS Builder Center
Weekend Agent Challenge: Mood DJ šŸŽ§

Weekend Agent Challenge: Mood DJ šŸŽ§

Now go spin something. It slaps. šŸŽ§šŸ”„

Okay so this weekend I built a vibe machine and honestly? It slaps. ✨ Meet
mood-dj — a tiny agent that reads how you're feeling (in literally any
language) and spins you back a mood emoji plus a little playlist-style hype line.
Felt cute, might translate your feelings today. šŸ’…
1
"estoy agotada hoy" šŸ˜®ā€šŸ’Ø ──▶ šŸ«‚ "Cozy lo-fi and a warm blanket. You've got this. šŸ’›"

What is it / who's it for? šŸ¤”

It's a pocket DJ for your mood! You type a feeling — Spanish, Hindi, French,
emoji-speak, whatever's in your head — and mood-dj figures out what you said,
reads the mood underneath it, and hands you a matching emoji + a one-line vibe.
It's for anyone who wants a tiny boost between tasks. Not a therapist, not a
productivity app. A toy. A smile. A little "hey, you've got this" from your
terminal. šŸŽ¶
The best part is you don't have to think in English for it to get you. Say it
your way, the DJ still reads the room. šŸŒ

How'd I build it? šŸ› ļø

Two pieces, zero servers to babysit. That's the whole brief and I stuck to it.
Piece one: Flask šŸ — a cute little web app that runs right on your laptop.
You open 127.0.0.1:5099, you get a card with a background that
shimmers when it answers. No deploy, no bucket, no API Gateway, no
CloudFormation anywhere near this thing. Just python app.py and the booth is
open.
Piece two: Amazon Translate šŸŒ — and THIS is the clever bit. When you type
your feeling, Translate auto-detects the language and flips it to English so the
DJ can read the mood. That's why you can type in your own language and still get
a vibe back — the agent meets you where you are. The card even tells you which
language it heard, which is weirdly satisfying every single time.
For AWS, that's the entire footprint: Amazon Translate (TranslateText,
with auto-detect) via boto3, plus your own creds. You pay Translate's teeny
per-character cost ONLY when you actually spin a vibe. šŸ’øā†’šŸ¤ Nothing idles.
Nothing bills while you sleep. First run asks two quick things (region + optional
profile), stashes them in ~/.mood-dj.ini, and never bugs you again.

The delightful detail šŸ’›

The one thing I obsessed over: mood-dj never yells at you. Not once. Even
when stuff breaks, you get a friendly card, never a scary stack trace. No creds?
→ it points you to aws configure. No Translate access? → it names the exact
permission to go ask for. Everything arrives as a soft little card, in-character,
calm. 🫶
And the shimmer! When the vibe lands, the background does this gentle color
shift that matches the mood — warm tones for cozy, cooler ones for calm. It's a
tiny thing but it makes the answer feel delivered, not just printed.
How do I know it worked? I threw curveballs at it. I typed "estoy agotada hoy"
(Spanish for "I'm exhausted today") and it caught the language, read the tired
mood, and handed back a šŸ«‚ with "Cozy lo-fi and a warm blanket. You've got this."
Then I typed a flat English "meh" and got a totally different, lighter vibe.
Different languages, different moods, right read every time — and the card told
me "heard: Spanish" so I could see it working. That little transparency plus
the shimmer is what turns a translate-call into something you actually want to
poke again. šŸ”

Proof it works šŸ“ø

  • Repo: https://github.com/prabiswas1999/mood-dj
  • Spin it: pip install -r requirements.txt, python app.py, open 127.0.0.1:5099

Screenshot:

Cleanup's a breeze 'cause it's just a script — close it and it's gone. Want it
really gone? rm ~/.mood-dj.ini and delete the folder. Bye-bye booth! šŸ‘‹
Now go spin something. It slaps. šŸŽ§šŸ”„
Any opinions in this article are those of the individual author and may not reflect the opinions of AWS.
Enjoyed reading this content? Let the author know!

Your likes, comments, shares, and saves help creators reach more builders.

Loading recommendations

Loading article