Skip to content

DouglasVolcato/whatsapp-automation-agent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

42 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿค– WhatsApp Automation Agent

Automate WhatsApp workflows using an LLM-powered agent that understands your domain and business needs.

GitHub repo Node.js Postgres 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


๐Ÿ“ธ App Screenshots

Login Dashboard Session Manage Users
LLM Chat Metrics Collection API Documentation (Swagger)

๐Ÿงฉ Architecture Diagrams

Application Architecture Database Design

โš™๏ธ Project Structure

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

# 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

About

The WhatsApp Automation Agent combines AI language models, web automation, and a robust dashboard to create a flexible automation platform for WhatsApp interactions.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

โšก