A small Rust utility that utomatically downloads, validates, and runs ChromeDriver, so you can start writing browser automation immediately without dealing with driver versions, paths, or manual setup.
This project is designed as a bootstrap layer for Selenium / WebDriver in Rust.
If you have ever worked with Selenium, you know the pain:
- manually downloading ChromeDriver
- matching Chrome driver versions
- managing PATH and binaries
- starting and stopping the driver process
- random "driver not found" errors
This tool handles all of that for you:
- detects OS and CPU arch:
- downloads the last-known-good ChromeDriver
- unpacks it locally
- verifies that it actually runs
- starts ChromeDriver as a child process
- cleanly shuts it down on exit
- Supports:
- Linux (x86_64 / arm64)
- macOS (Intel / Apple Silicon)
- Windows (x86 / x64)
- No global instanllation required
- Stores the driver locally (
./bin/chromedriver) - Ensures the driver is executable and valid
- Ready to use with
thirtyfour(Selenium for Rust)
-
On startup:
- checks for
chromedriverin./bin
- checks for
-
If missing or invalid:
- downloads the official ChromeDriver
- selects the correct platform
- extracts and marks it executable
-
Starts ChromeDriver as a child process
-
Waits until the WebDriver
/statusendpoint is ready -
You can immediately control browser
- Rust developers
- Web scraping
- Browser automation
- End-to-end testing
- Anyone who wants WebDriver without the setup hassle
Run your binary — you get a working WebDriver.
No downloads, no PATH setup, no pain.