Jugaad
Jugaad Tool Apache 2.0IntermediateWhatsApp & SupportFree

whatsapp-web.js

A Node.js library for building WhatsApp messaging tools through WhatsApp Web, with media, groups and reply support.

Stars
23k
Forks
5.2k
Last update
1 Nov 2026

Overview

whatsapp-web.js lets developers control WhatsApp Web from Node.js using a browser managed by Puppeteer. It supports messaging, media, groups and other WhatsApp features for user or business accounts. It is unofficial, and the project warns that accounts may be blocked.

Who it's for

Node.js and JavaScript developersAgencies building custom messaging toolsBusinesses with developers available to maintain an unofficial WhatsApp connection

Tech stack

JavaScriptNode.jsPuppeteerWhatsApp WebGoogle Chromeqrcode-terminal

Features and benefits

Key features

  • Send, receive and reply to messages.
  • Send images, audio, documents and stickers; sending video requires Google Chrome.
  • Receive images, audio, video and documents.
  • Send contact cards and send or receive locations.
  • Manage group invites, information, settings and participants.
  • Mention users and groups, and react to messages.
  • Create polls and vote in polls.
  • Work with channels and multi-device accounts.
  • Mute chats, block contacts and retrieve contact information.

Why it helps in Pakistan

  • Build custom message-response workflows in JavaScript.
  • Share documents and product images within WhatsApp conversations.
  • Handle group administration through code.
  • Use one library for text, media, locations and polls.
  • Access source code under the Apache-2.0 licence.

Pakistan use cases

  • 01

    A Karachi retailer could build a tool to send product images and reply to customer enquiries.

  • 02

    A Lahore tuition centre could share lesson documents and create polls in class groups.

  • 03

    An Islamabad repair business could receive customer photos and exchange service locations.

  • 04

    A Pakistani developer agency could prototype WhatsApp support workflows, while accounting for the risk of account blocking.

Requirements

Hardware
Check the official docs for CPU, RAM and storage requirements.
Operating system
Check the official docs for supported operating systems.
Skills
JavaScript and Node.js developmentWorking with package managers and event handlers
Accounts needed
A WhatsApp user or business account; unofficial clients carry an account-blocking risk.

Setup guide

Commands are copied from the project's README and official docs.

  1. 1

    Prepare Node.js

    Node.js v18.0.0 or higher is required. Check the official docs for operating-system-specific installation instructions.

    Not fully covered in the README. Check the official docs before running this step.

  2. 2

    Install the library

    Choose one package manager: npm install whatsapp-web.js or yarn add whatsapp-web.js or pnpm add whatsapp-web.js.
  3. 3

    Use the README example

    The example creates a Client, handles QR and ready events, replies with pong to !ping, and initializes the client. It also imports qrcode-terminal, but its installation command is not provided. Check the official docs.

    Not fully covered in the README. Check the official docs before running this step.

  4. 4

    Run and authenticate

    Check the official docs for the launch command and complete authentication steps; these are not included in the supplied installation instructions.

    Not fully covered in the README. Check the official docs before running this step.

  5. 5

    Review session persistence

    Follow the linked Authentication Strategies guide for saving and restoring sessions.

Works with

  • WhatsApp Web

    Connects through a managed browser to access WhatsApp Web's internal functions. This is not an official WhatsApp API integration.

  • Puppeteer

    Manages the browser instance used to interact with WhatsApp Web.

  • qrcode-terminal

    The README example uses it to display QR codes in the terminal.

  • Google Chrome

    Required for sending video media.

What it costs

SoftwareFree to self-host under the Apache-2.0 licence.
HostingHosting costs depend on the managed browser's resource needs. The supplied sources give no hardware sizing, so check the official docs and current hosting prices before budgeting.

FAQ

Is this an official WhatsApp API?

No. The project is not affiliated with or endorsed by WhatsApp. It connects through WhatsApp Web rather than an official business API.

Can my WhatsApp account be blocked?

Yes. The README says WhatsApp does not allow bots or unofficial clients, and there is no guarantee that your account will not be blocked.

Is this a ready-made support dashboard?

It is a Node.js developer library. You need to write application code to create your own messaging workflows.

Does it work with business accounts?

The official homepage says it can programmatically control both user and business accounts.

Are buttons, lists and communities supported?

Sending buttons and lists is marked deprecated and unsupported. Communities are marked as coming later, not currently supported.

Troubleshooting

Package installation fails.

Check that Node.js is v18.0.0 or higher, review the installation error, and see the official docs for detailed installation guidance.

Sending video does not work.

The feature requires Google Chrome. See the official docs' linked attachment caveat for browser requirements.

Sessions are not being saved or restored.

Review the Authentication Strategies guide linked in the README; see the official docs for the appropriate session configuration.

Buttons or lists do not send.

These features are marked deprecated and unsupported. Use supported text replies or media instead; see the official docs for current feature status.

Get it set up for you

Don't want to install it yourself? A Jugaad maker can set up whatsapp-web.js for your business. Payment is held in Safe Deal until it works.

No maker offers a setup gig for this yet. Post a request and makers will quote.

Post a setup request Paid through Safe Deal

Built by wwebjs and contributors on GitHub. All credit goes to the authors. GitHub stats refresh daily. Jugaad does not host, copy or sell this code.

Is this your project?