A state-driven REST API where a coffee machine behaves like a burned-out human.
Base URL
https://emotionally-unstable-coffee-api.onrender.com
Try it now:
/status → https://emotionally-unstable-coffee-api.onrender.com/status/preview → https://emotionally-unstable-coffee-api.onrender.com/previewThis API simulates a coffee machine with emotions, burnout, and questionable life choices.
Every request affects its internal state. Every response reflects how it feels.
Sometimes it serves coffee. Sometimes it refuses. Sometimes it spirals.
Watch the API in action: Watch Demo Video
This is not just an API.
It is a state-driven personality system exposed through HTTP endpoints.
{
"mood": "neutral",
"caffeineLevel": 70,
"burnout": 30,
"cleanliness": 80
}
| Method | Route | Description |
|---|---|---|
| GET | /status |
Current system state |
| POST | /brew |
Brew coffee |
| POST | /refill |
Add caffeine |
| POST | /clean |
Clean machine |
| GET | /motivate |
Motivation (based on mood) |
| POST | /therapy |
Talk to the machine |
| GET | /claims |
Random claims |
| GET | /preview |
Full system demo |
| GET | /info |
API metadata |
{
"status": "operational",
"mood": "neutral",
"caffeineLevel": 70,
"burnout": 30,
"cleanliness": 80
}
{
"cups": 2
}
Response
{
"status": 200,
"message": "Coffee ready. Don’t push it."
}
{
"message": "you’re doing great"
}
Possible response
{
"mood": "suspicious",
"message": "Why are you being nice?"
}
The API evolves over time:
/brew - burnout increasesEven the same request can return different results.
Inspired by HTCPCP (Hyper Text Coffee Pot Control Protocol)
Example:
X-Coffee-Mood: existential_crisis
X-Caffeine-Level: 12
Open this: https://emotionally-unstable-coffee-api.onrender.com/preview
This route simulates:
git clone https://github.com/dipanshu447/emotionally-unstable-coffee-api.git
cd emotionally-unstable-coffee-api
npm install
npm start
Server:
http://localhost:5000
Dipanshu Sahu
Most APIs return predictable results.
This one reacts.
What if an API didn’t just respond… but had a personality?
Built for the Dev.to April Fools Challenge 2026.
This API is intentionally unstable.
Use responsibly.