Puppeteer is a JavaScript library which provides a high-level API to automate both Chrome and Firefox over the Chrome DevTools Protocol and WebDriver BiDi.

Use it to automate anything in the browser, from taking screenshots and generating PDFs to navigating through and testing complex UIs and analysing performance.

Concepts

Query DOM elements, click buttons, type text, and more.
Intercept and modify network requests and responses.
Get visual snapshots of full pages or specific elements.
Learn about headless, headful and shell modes and when to use them.

Blog posts

Read the most recent blog posts touching on Puppeteer, Chrome For Testing and WebDriver BiDi.

Learn how scroll-driven and scroll-triggered animations enhance storytelling articles

Learn about how Google Search used the Speculation Rules API to anonymously prefetch search results to improve user experience

Learn about the Spotify Miniplayer's transformation from a "canvas hack" to a refined experience enabled by the Document Picture-in-Picture API.