mxschmitt/playwright-go

Playwright for Go a browser automation library to control Chromium, Firefox and WebKit with a single API.

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 8 minutes ago
Added to GitGenius on September 19th, 2026
Created on August 16th, 2020
Open Issues & Pull Requests: 4 (+0)
GitHub issues: Enabled
Number of forks: 246
Total Stargazers: 3,510 (+0)
Total Subscribers: 35 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 7.5 days
Mean response time: 174.2 days
90th percentile: 652.1 days
Tracked items: 93

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 3
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 819 days
Stale 30+ days: 3
Stale 90+ days: 2

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • p2-bug (32)
  • help wanted (1)
  • needs-verification (1)
  • p3-collecting-feedback (1)
  • question (1)
  • triaging (1)
  • upstream (1)

Most active issues this week

Sign in to see which issues are moving.

Detailed Description

Playwright for Go is a browser automation library that controls Chromium, Firefox and WebKit with a single API.

The tool solves the problem of cross-browser web automation by providing a unified interface to control multiple browser engines. It works by offering resilient locators that find elements the way users see them on the page, using methods like GetByRole, GetByLabel, and GetByTestId instead of brittle CSS selectors. The library includes auto-wait functionality where actions such as Click and Fill automatically wait for elements to be actionable, and assertions retry until conditions are met without requiring arbitrary sleeps. It also provides full context isolation where each BrowserContext operates like a fresh browser profile with minimal overhead, network interception capabilities to stub and mock requests, and a Trace Viewer for recording and inspecting DOM snapshots, network traffic, and console logs.

Developers should choose this tool if they need to automate browser interactions in Go across multiple browser engines. It suits projects requiring reliable, fast cross-browser testing and web automation where brittle selectors and timing issues are concerns. The library supports headless and headed execution on Linux, macOS, and Windows for all three browsers. Installation requires downloading the Playwright driver and browsers, with each minor version upgrade requiring a specific driver version.

The project maintains active development with regular updates to browser versions and ongoing refinement of its automation capabilities. The tool includes comprehensive example recipes demonstrating common automation patterns and provides documentation that shares API semantics across all Playwright language implementations.