https://github.com/douglasvolcato/whatsapp-automation-agent
The WhatsApp Automation Agent combines AI language models, web automation, and a robust dashboard to create a flexible automation platform for WhatsApp interactions.
https://github.com/douglasvolcato/whatsapp-automation-agent
bcrypt chatbot chatgpt ejs express jsonwebtoken jwt langchain langchain-js nodejs observability ollama postgresql primereact prometheus react swagger typescript whatsapp whatsapp-bot
Last synced: 3 months ago
JSON representation
The WhatsApp Automation Agent combines AI language models, web automation, and a robust dashboard to create a flexible automation platform for WhatsApp interactions.
- Host: GitHub
- URL: https://github.com/douglasvolcato/whatsapp-automation-agent
- Owner: DouglasVolcato
- Created: 2025-06-11T04:10:09.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-07-01T03:04:57.000Z (4 months ago)
- Last Synced: 2025-07-01T03:34:35.162Z (4 months ago)
- Topics: bcrypt, chatbot, chatgpt, ejs, express, jsonwebtoken, jwt, langchain, langchain-js, nodejs, observability, ollama, postgresql, primereact, prometheus, react, swagger, typescript, whatsapp, whatsapp-bot
- Language: TypeScript
- Homepage:
- Size: 2.32 MB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ๐ค WhatsApp Automation Agent
> Automate WhatsApp workflows using an LLM-powered agent that understands your domain and business needs.
[](https://github.com/DouglasVolcato/whatsapp-automation-agent)
[](https://nodejs.org/)
[](https://www.postgresql.org/)
[](LICENSE)
---
## ๐ฆ Project Overview
The WhatsApp Automation Agent combines **AI language models**, **web automation**, and a robust **dashboard** to create a flexible automation platform for WhatsApp interactions.
Features:
- Automate conversations and workflows
- Manage users and sessions via a secure admin dashboard
- Observe system metrics and performance
- Integrate LLM agents and tools tailored to your domain
---
## ๐งญ Table of Contents
- [๐งญ Table of Contents](#-table-of-contents)
- [๐ธ App Screenshots](#-app-screenshots)
- [๐งฉ Architecture Diagrams](#-architecture-diagrams)
- [โ๏ธ Project Structure](#๏ธ-project-structure)
- [๐ Technologies & Tools](#-technologies--tools)
- [๐ฆ Installation](#-installation)
- [๐ License](#-license)
---
## ๐ธ App Screenshots
| Login | Dashboard Session | Manage Users |
| -------------------- | ---------------------- | --------------------------- |
|  |  |  |
| LLM Chat | Metrics Collection | API Documentation (Swagger) |
| -------------------- | ---------------------- | --------------------------- |
|  |  |  |
---
## ๐งฉ Architecture Diagrams
| Application Architecture | Database Design |
| ----------------------- | ---------------- |
|  |  |
---
## โ๏ธ Project Structure
```plaintext
docker-compose.yml
.env.example
app
โโ db # SQL migrations
โโ dist # Compiled backend
โโ logs # Logs
โโ src
โ โโ domain
โ โ โโ abstract
โ โ โโ controllers
โ โ โโ middlewares
โ โ โโ usecases
โ โ โโ utils
โ โโ ia
โ โ โโ abstract
โ โ โโ agents
โ โ โโ tools
โ โโ infra
โ โ โโ database
โ โ โโ repositories
โ โโ main
โ โโ abstract
โ โโ factories
โ โโ routes
โ โโ utils
โ โโ index.ts
โโ public
โ โโ views # EJS templates
โ โโ files # Static files
โ โโ client # React frontend
โ โโ dist
โ โโ public
โ โโ src
โ โโ app
โ โโ components
โ โโ config
โ โโ contexts
โ โโ decorators
โ โโ enums
โ โโ hooks
โ โโ stores
โ โโ utils
โ โโ main.tsx
````
---
## ๐ Technologies & Tools
### ๐ฅ Backend
* **Node.js** & **TypeScript**: main runtime and language
* **dotenv**: environment config
* **node-cron**: task scheduling
### ๐ Cryptography & Auth
* **bcryptjs**: password hashing
* **jsonwebtoken**: token-based authentication
### ๐ก๏ธ Security
* **helmet**: security headers
* **express-rate-limit**: rate limiting
### ๐งพ Documentation
* **Swagger**: API documentation
* **Draw\.io**: architecture diagrams
### ๐ Database
* **Postgres**: relational database
* **SQL optimization**: performance tuning
### ๐ Observability
* **Prometheus**: metrics collection & monitoring
### ๐ค WhatsApp Automation
* **puppeteer**: headless browser control
* **whatsapp-web.js**: WhatsApp web automation
### ๐ง LLM Integration
* **LangChain**: tool orchestration
* **Ollama**, **ChatGPT**: language models
* **zod**: validation & tool format definition
### ๐ Frontend
* **React**: SPA dashboard
* **PrimeReact**, **PrimeIcons**, **PrimeFlex**: UI toolkit
* **Chart.js**: data visualization
* **Zustand**: state management
* **Axios**: API communication
* **EJS**: server-rendered templates
* **Static files**: public content
---
## ๐ฆ Installation
```bash
# Clone the repository
git clone https://github.com/DouglasVolcato/whatsapp-automation-agent.git
cd whatsapp-automation-agent
# Copy environment variables template
cp .env.example .env
# Build & run using Docker
docker compose up --build
# Access
# - Server: http://localhost:PORT
# - Client: http://localhost:PORT/client
# - Docs: http://localhost:PORT/docs
```
> ๐งช Note: Ensure Docker & Docker Compose are installed.
---
## Author
* **Douglas Volcato**: [GitHub](https://github.com/DouglasVolcato)