Open Source Radar
Skyvern-AI/

rustwright

GitHub

Rustwright provides a Playwright-compatible API that drives Chromium from a native Rust CDP engine, with Python and Node bindings. It runs in-process, no Node driver subprocess, and targets Chromium only.

776stars
+6024h
44forks
21issues
MITlicense
2026since
Star historydaily snapshots by VibeCrowd
Alternatives & relatedmatched by topic overlap
Reviewgenerated from repository data · Jul 20, 2026

What it is

Rustwright is a browser automation library for Python and Node.js that keeps the Playwright API but drives Chromium from a native Rust engine speaking raw Chrome DevTools Protocol. It runs in-process with no driver subprocess and interoperates with Playwright.

How it works

One Rust core acts as an async CDP client built on Tokio, talking directly to Chromium. Python uses PyO3 bindings and Node uses napi-rs bindings to expose the engine in-process.

Getting started

Python

pip install rustwright
python -m rustwright install chromium

Node.js (experimental)

npm install rustwright

The Node binding drives Chromium; point at a Chromium binary using environment variables (RUSTWRIGHT_CHROMIUM, CHROME, or CHROMIUM). Build from source by:

git clone <repo> && cd rustwright/node && npm install && npm run build

Recent releases

  • None

Traction

701 stars, 7 open issues, 40 forks (as of the provided data).

Limitations

  • Chromium-only. Firefox and WebKit are not supported.
  • Node bindings are early; a subset of the surface is bridged (launch, newPage, goto, click, fill, title, textContent, evaluate, screenshot, close); contexts, routing, tracing, and locators are Python-only for now.
  • Async concurrency details and parity coverage are described in the README (e.g., 515 of 536 methods in Python sync API; 488 of 536 in async).
SharePost on XLinkedIn
All trending reposRevenue-verified startups →