Skip to content

EduGFon/modular-wa-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⭐ WALL-E 🤖 ⭐

✨ WALL-E is a modularized WhatsApp chat bot with some cool features. ✨

⚠️ » WALL-E is still under development, feel free to contribute to this repo and leave a


🤔 What do you mean by "cool features"?:

  • Translate text;
  • Search on Google;
  • "Speak" in 5 languages;
  • Change its prefix just for you;
  • Remove background from images;
  • Create stickers with photos and gifs;
  • Rank group members by sent msgs count;
  • Mass delete group msgs for all members;
  • Run code in multiple programming languages;
  • Download videos and audios from many websites;

and more.

💭 How does it work and wtf is modularization?

  1. The main thread connects to WhatsApp posing as a MacOS app (NodeJS).
  2. There are two main threads, they divide the workload between themselves (Pm2 Clusters).
  3. Each command and each event runs in a separate process (DENO).
  4. They communicate with each other via http requests.
  5. No thread retains cache. When necessary, it will ask DBCacher.
  6. DBCacher stores the entire application cache and interacts with the database (PostgreSQL/Prisma).
  7. This way, each structure can be completely restarted without affecting the others.

🤔 How to install?

1 - 🛠️ Install runtimes and tools:

🪧 » Recommended version: 1.41 or higher

🪧 » Recommended version: 20 or higher

🪧 » Recommended version: 3.11 or higher

🪧 » Recommended version: 14 or higher

⚠️ » Only required to clone this repo

OPTIONAL TOOLS REQUIRED ONLY TO RUN CODE:

🪧 » Recommended version: 5.4 or higher

🪧 » Recommended version: 11.4 or higher

2 - 📁 Download or clone the repository:

"Code" > "Download ZIP"

or

git clone https://github.com/Sunf3r/WALL-E # Clone this repo

3 - 🧰 Install dependencies:

💡 » Open the folder in terminal

npm install -g pm2 prisma
npm install # Download and build dependencies

4 - 🌿 Preparing the environment:

All bot configuration files are located in .vscode folder:

  • bot.json (.vscode/bot.json)
{
	"botOwners": [""], // owners can use eval and admin tools
	"botNumber": ""
}

💡 » Rename "bot.example.json" to "bot.json"

5 - 🚀 Starting:

💡 » If it's your first time running the bot, you need to format the database:

npm run prisma:push

And finally:

pm2 start .vscode/ecosystem.config.cjs --attach

I Hope you like the project :)

About

modular attempt to make a super wa-bot

Topics

Resources

Stars

Watchers

Forks