# Playwright for Elixir

**NOTE:** This package is currently in "preview". The features are not yet at parity with other Playwright implementations. Once `playwright-elixir` is at or near parity with [`playwright`](, the version number will be updated to mirror the supported version of `playwright`.

## Overview

[Playwright]( is an Elixir library to automate Chromium, Firefox and WebKit with a single API. Playwright is built to enable cross-browser web automation that is **ever-green**, **capable**, **reliable** and **fast**. [See how Playwright is better](

## Installation

The package can be installed by adding `playwright` to your list of dependencies in `mix.exs`:

def deps do
    {:playwright, "~> 0.1.1-preview"}

## Usage

- [Getting started](
- [API Reference](

## Example

defmodule Test.ExampleTest do
  use ExUnit.Case, async: true
  use PlaywrightTest.Case

  describe "Navigating to" do
    test "works", %{browser: browser} do
      page =
        |> Playwright.Browser.new_page()

      text =
        |> Playwright.Page.goto("")
        |> Playwright.Page.text_content(".navbar__title")

      assert text == "Playwright"


## Contributing

### Getting started

1. Clone the repo
2. Run `bin/dev/doctor` and for each problem, either use the suggested remedies or fix it some other way
3. Run `bin/dev/test` and then `bin/dev/start` to make sure everything is working

### Day-to-day

- Get latest code: `bin/dev/update`
- Run tests: `bin/dev/test`
- Start server: `bin/dev/start`
- Run tests and push: `bin/dev/shipit`