puppeteer
JavaScript API for Chrome and Firefox
AutomationChromeChromiumDeveloper ToolsFirefoxHeadless ChromeNode ModuleTestingTypeScriptApache-2.0 95.4k 9.6kHealth 95
What is it?
What it is
> Puppeteer is a JavaScript library which provides a high-level API to control > Chrome or Firefox over the
Why it exists
JavaScript API for Chrome and Firefox
Who should use it
Teams building with TypeScript who want an open-source, self-hosted option.
Who should avoid it
Teams that need a fully managed SaaS with enterprise SLAs out of the box.
How it works
A quick walkthrough in plain English
How puppeteer works in 4 steps
Step 1 of 4
Something triggers the flow
A schedule, webhook, or manual click tells puppeteer to start.
Features
Automation
Chrome
Chromium
Developer Tools
Firefox
Headless Chrome
Advantages
- Open source (Apache-2.0)
- Active TypeScript ecosystem
- Self-hosted deployment options
Disadvantages
- Requires operational ownership for self-hosted setups
- Community support varies by project maturity
Installation
native
:::note Modern package managers (including npm (see the [RFC](https://github.com/npm/rfcs/pull/868)), pnpm, Yarn, Bun, and Deno) block dependency install scripts by default. If the install script is blocked, Puppeteer will not download the browser during installation, leading to runtime errors. You can manually download the required browsers after installation by running:
FAQ
What is puppeteer?
puppeteer is an open-source project licensed under Apache-2.0.
What language is puppeteer built with?
Primary language: TypeScript.
Is it free to use?
Yes. Licensed under Apache-2.0. Check the license for commercial use.
Loading documentation…
View on GitHubFeatured in Videos
YouTube tutorials and walkthroughs for puppeteer
Alternatives
Similar projects ranked by category, topics, and text overlap.