Choose a package
Choose the runtime, remote client, driver, or SDK that fits your application.
Start with the package that matches where your WhatsApp session will run. You can add integrations and lower-level packages when your application needs them.
| What you want to do | Package and setup guide |
|---|---|
| Run a local HTTP API | @open-wa/wa-automate: Easy API quick start |
| Own the browser and session inside a Node.js app | @open-wa/wa-automate: custom code |
| Connect to an Easy API session that is already running | @open-wa/socket-client: remote client setup |
| Build a plugin | @open-wa/plugin-sdk: plugin getting started |
| Decrypt downloaded WhatsApp media | @open-wa/decrypt: package reference |
The installation examples use 5.1.0. See release status before choosing a different npm tag or Docker image; those release channels can move independently. The v5.1.0 release notes describe changes in this release.
Choose a browser driver
Embedded applications pass a driver to createClient(). The custom-code guide includes a complete Puppeteer example with installation, authentication, message handling, and shutdown.
| Driver package | When to consider it |
|---|---|
@open-wa/driver-puppeteer | Follow the Puppeteer setup used in the getting-started examples. |
@open-wa/driver-playwright | Use the Playwright adapter when it fits your browser setup. |
@open-wa/driver-lightpanda | Explore the experimental Lightpanda adapter and its current limitations. |
Explore the implementation
Most applications can stay with the entry points above. If you need to work on the runtime itself, the package references describe each workspace:
@open-wa/clientexposes the Client API.@open-wa/corecoordinates the browser driver and runtime events.@open-wa/configloads and validates configuration.@open-wa/session-synchandles session synchronization.@open-wa/screencasterstreams the browser screen to a client.@open-wa/hyperemitterprovides the runtime's schema-based event emitter.
Browse the workspace reference for the complete package, application, and integration list.
Was this helpful?
Your answer includes the page path and docs version.
