Playwright

Cross-browser end-to-end web testing and browser automation with a single API for Chromium, Firefox, and WebKit.

Framework
npm
v1.63.0
96,772 stars
Apache License 2.0

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum. How we score it →
92 /100 Excellent
Development Activity 100
Maintenance 100
Community 68
Maturity 60
Momentum 40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation. How we score it →
91 /100 Excellent
Architecture 92
Code Quality 90
Innovation 92
Learning Curve 88

Playwright is an open-source framework from Microsoft for reliable end-to-end testing and browser automation. It drives Chromium, Firefox, and WebKit through one unified API, so a single suite of tests exercises every major rendering engine. Auto-waiting, web-first assertions, and full browser-context isolation eliminate the flakiness that plagues traditional automation tools.

Beyond its full-featured test runner, Playwright works as a general-purpose automation library for scripting, scraping, and driving browsers from AI agents. Built-in tooling such as the codegen recorder, trace viewer, and parallel execution across browser contexts makes it a complete platform for verifying and automating modern web applications.

What You Get

  • A cross-browser engine that runs the same tests against Chromium, Firefox, and WebKit through one API.
  • A parallel, isolated test runner with auto-waiting and web-first assertions that retry until conditions are met.
  • Resilient locators (getByRole, getByLabel, getByTestId) that target elements the way users perceive them.
  • Debugging and authoring tooling: the trace viewer, codegen recorder, UI mode, and step-through inspector.
  • A standalone automation library and CLI usable for scripting, scraping, and driving browsers from AI agents.

Common Use Cases

  • Writing end-to-end test suites that validate critical user flows across every major browser engine.
  • Automating repetitive browser tasks such as form submission, scraping, and PDF or screenshot generation.
  • Capturing traces and videos of test runs to debug intermittent CI failures.
  • Driving a real browser from AI agents and LLM-based automation via the CLI and library APIs.

Under The Hood

Architecture Playwright is a pnpm-workspace monorepo (packages/*) whose engine, playwright-core, splits cleanly into a client that exposes the public API (packages/playwright-core/src/client) and a server-side implementation (browserServerImpl.ts, androidServerImpl.ts) that speaks a defined wire protocol to patched browser builds. The public playwright package is a thin wrapper over playwright-core, adding the CLI (cli.js), while @playwright/test layers a test runner, fixtures, and reporters on top. This protocol-driven client/server separation is what lets one API drive Chromium, Firefox, and WebKit uniformly and enables out-of-process and remote automation.

Tech Stack The codebase is ~91% TypeScript, built and linted with a strict eslint.config.mjs and tsconfig, with 109 dev dependencies orchestrated through workspace scripts. It maintains its own browser patches (browser_patches/) rather than relying solely on stock builds, and ships companion packages for component testing (playwright-ct-react, playwright-ct-vue), HTML reporting, and trace viewing. The single runtime dependency of the playwright package is playwright-core, keeping the installable surface small.

Code Quality Testing is exhaustive: over 500 spec files span library, page, test-runner, electron, android, and installation suites, exercising real browsers across engines. A dedicated eslint config, editorconfig, and DEPS.list dependency manifests enforce internal module boundaries. Consistent naming, typed public surfaces, and a large contributor base (770+) backed by Microsoft signal a mature, well-governed project.

API Design The public API is a benchmark for developer experience: user-facing locators (getByRole, getByLabel, getByTestId) read like intent, auto-waiting removes manual timing, and web-first assertions retry automatically. Getting started takes a few lines, and tooling — codegen to record tests, the trace viewer to replay them, and UI mode — dramatically lowers the effort of authoring and debugging. Documentation at playwright.dev is thorough and example-rich.

Used by 295 apps in this directory

TypeScript
99%
AGPL 3.0

Webstudio

Design Tools · No Code Platforms

8,998

Open source visual development platform with complete CSS control, headless CMS integration, and full infrastructure ownership

View details
90
Repo Health
79
Technical
61
Dependency
Built with
TypeScript 99%
Updated 1 weeks ago
Rust
32%
Other

Windmill

Automation · Developer Tools

18,043

Turn scripts into webhooks, workflows, and auto-generated UIs — the fastest self-hostable workflow engine, 13x faster than Airflow.

View details
91
Repo Health
82
Technical
65
Dependency
Built with
Rust 32%
TypeScript 24%
Svelte 22%
Updated 1 weeks ago
TypeScript
96%
GPL 3.0

Wire

Collaboration · Team Chat · Video Conferencing

1,192

Open source end-to-end encrypted messaging for teams and enterprises — self-host for complete control over your communications and data.

View details
93
Repo Health
8
Technical
71
Dependency
Built with
TypeScript 96%
Updated 1 weeks ago
TypeScript
96%
GPL 3.0

Wire

Collaboration · Team Chat · Video Conferencing

1,192

Open source end-to-end encrypted messaging for teams and enterprises — self-host for complete control over your communications and data.

View details
93
Repo Health
8
Technical
71
Dependency
Built with
TypeScript 96%
Updated 1 weeks ago
TypeScript
51%
Other

World Monitor

Analytics · Monitoring

87,476

Real-time global intelligence dashboard that fuses AI-synthesized news, geopolitical risk scoring, and infrastructure tracking into one open-source situational awareness platform.

View details
87
Repo Health
89
Technical
68
Dependency
Built with
TypeScript 51%
JavaScript 47%
Updated 1 weeks ago
TypeScript
51%
Other

World Monitor

Analytics · Monitoring

87,476

Real-time global intelligence dashboard that fuses AI-synthesized news, geopolitical risk scoring, and infrastructure tracking into one open-source situational awareness platform.

View details
87
Repo Health
89
Technical
68
Dependency
Built with
TypeScript 51%
JavaScript 47%
Updated 1 weeks ago
Go
75%
AGPL 3.0

ZITADEL

Authentication

15,119

Open-source, API-first identity platform delivering multi-tenancy, Passkeys, OIDC, SAML, and SCIM without vendor lock-in.

View details
92
Repo Health
81
Technical
65
Dependency
Built with
Go 75%
TypeScript 12%
Updated 1 weeks ago

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers