https://github.com/mustofa-id/wa-bot
Multipurpose Personal WhatsApp Bot
https://github.com/mustofa-id/wa-bot
bot nodejs wa-bot whatsapp-bot
Last synced: 15 days ago
JSON representation
Multipurpose Personal WhatsApp Bot
- Host: GitHub
- URL: https://github.com/mustofa-id/wa-bot
- Owner: mustofa-id
- Created: 2025-09-12T00:42:49.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2026-06-13T06:20:50.000Z (17 days ago)
- Last Synced: 2026-06-15T00:32:26.325Z (15 days ago)
- Topics: bot, nodejs, wa-bot, whatsapp-bot
- Language: TypeScript
- Homepage:
- Size: 123 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Agents: AGENTS.md
Awesome Lists containing this project
README
# Personal WhatsApp Bot
Uses a plugin-based architecture — commands auto-discover from the `plugins/` directory. Runs on Node.js with native TypeScript (no build step).
## Features
- **Plugin system** — drop a file in `plugins/`, export a `BotPlugin`, and `!your-command` works immediately
- **Status HD** — convert image/video attachments or URLs to HD-ready status with auto-splitting
- **Queues** — per-user or global serialization for long-running plugins
- **Generator plugins** — yield intermediate progress messages and interactive prompts
- And more...
## Requirements
- Node.js ≥ 22
- pnpm 11.2.2 (managed via corepack)
- ffmpeg + ffprobe, ghostscript, yt-dlp (optional — per-plugin)
## How to Run
### Development
```bash
pnpm install
pnpm dev
```
### Production
Run with `./deploy.sh` script (Linux/Unix only) or manually:
With PM2:
```bash
pnpm add -g pm2
pm2 start main.ts --interpreter node --interpreter-args "--env-file=.env" --name wa-bot
```
With Podman:
```bash
podman build -t wa-bot:latest .
podman run -d --env-file .env --name wa-bot -v "$(pwd)/data:/app/data" wa-bot:latest
```
With Docker:
```bash
docker build -t wa-bot:latest .
docker run -d --env-file .env --name wa-bot -v "$(pwd)/data:/app/data" wa-bot:latest
```
## License
MIT