DEV Community

Cover image for 💬 Waaku: Manage Multiple WhatsApp Sessions with One Dashboard
ilhamsabir
ilhamsabir

Posted on

💬 Waaku: Manage Multiple WhatsApp Sessions with One Dashboard

Ever tried running more than one WhatsApp Web session… and realized you can’t? 😩

For developers building chatbots, automation tools, or customer service dashboards, that’s a huge limitation.

So I built Waaku 🚀 —

an open-source multi-session WhatsApp manager with:

✅ Real-time dashboard

✅ Secure API (REST + WebSocket)

✅ Docker support out of the box

Fork it, run it, and instantly manage multiple WhatsApp accounts like a pro.


🔥 Why You’ll Love Waaku

  • Multi-session → no more juggling one account at a time
  • Real-time dashboard → scan QR, see status, monitor errors instantly
  • Swagger API → send messages, validate numbers, restart sessions via REST
  • Secure Auth → SHA-512 API keys (raw key never touches the server)
  • Dockerized → works anywhere in minutes

It’s basically WhatsApp Web on steroids 💪


🛠️ Tech Stack at a Glance

Layer Tech
Frontend Vue 3 + Vite + Tailwind + Socket.IO
Backend Node.js + Express + whatsapp-web.js
Real-time Socket.IO
Auth UUIDv4 + SHA-512 API keys
Docs Swagger (/api-docs)
Deploy Docker + docker-compose

🚀 Quick Start

# Clone the repo
git clone https://github.com/ilhamsabir/waaku_project.git
cd waaku_project

# Copy env file and configure
cp .env.example .env

# Build & run with Docker
docker compose up --build -d
Enter fullscreen mode Exit fullscreen mode

⚡ Example: Validate a Number

curl -X POST http://localhost:4300/api/sessions/session1/validate \
  -H "Content-Type: application/json" \
  -H "X-API-Key: <your-raw-uuidv4>" \
  -d '{"to": "6281234567890"}'
Enter fullscreen mode Exit fullscreen mode

Boom 💥 — instant validation.


🔎 Behind the Scenes

Waaku keeps your dashboard in sync without polling:

  • QR code generated? → pushed instantly via Socket.IO
  • Session ready? → dashboard updates in real-time
  • Error? → you’ll see it right away

Built on whatsapp-web.js but wrapped in a much more developer-friendly flow.


🗺️ Roadmap

Some ideas in the pipeline:

✅ Automated testing (unit + integration)
✅ Redis for distributed rate limiting
✅ Notifications (Slack/Telegram when a session drops)
✅ Plugin-ready UI

  • Got suggestions? Open an issue or PR 🙌

🚀 Final Thoughts

WhatsApp is powerful, but its limits slow us down.
With Waaku, you finally get a multi-session, real-time, Dockerized WhatsApp manager that’s flexible enough for side projects, startups, or production systems.

I’m excited to see what you build with it. Fork the repo today 👇

👉 https://github.com/ilhamsabir/waaku_project

Top comments (0)