PHPackages                             uuf6429/mink-electron-driver - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [HTTP &amp; Networking](/categories/http)
4. /
5. uuf6429/mink-electron-driver

AbandonedArchivedLibrary[HTTP &amp; Networking](/categories/http)

uuf6429/mink-electron-driver
============================

Mink Electron Driver

1.3.0(8y ago)118[10 issues](https://github.com/uuf6429/MinkElectronDriver/issues)[5 PRs](https://github.com/uuf6429/MinkElectronDriver/pulls)MITPHPPHP &gt;=5.6

Since Apr 6Pushed 8y ago1 watchersCompare

[ Source](https://github.com/uuf6429/MinkElectronDriver)[ Packagist](https://packagist.org/packages/uuf6429/mink-electron-driver)[ RSS](/packages/uuf6429-mink-electron-driver/feed)WikiDiscussions master Synced 2d ago

READMEChangelog (6)Dependencies (10)Versions (13)Used By (0)

Mink Electron Driver
====================

[](#mink-electron-driver)

[![Build Status (Linux / TravisCI)](https://camo.githubusercontent.com/80f314dc6fcc4680e1e8671cf9435513dc154791170ce7ab2b496d793523902c/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f757566363432392f4d696e6b456c656374726f6e4472697665722f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://travis-ci.org/uuf6429/MinkElectronDriver)[![Build Status (Windows / AppVeyor)](https://camo.githubusercontent.com/7e376cc7b104f3c82a12421fd676e738d955f9f7d5271e5e7a2aabd84daa6fc8/68747470733a2f2f696d672e736869656c64732e696f2f6170707665796f722f63692f757566363432392f4d696e6b456c656374726f6e4472697665722f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://ci.appveyor.com/project/uuf6429/minkelectrondriver)[![Minimum PHP Version](https://camo.githubusercontent.com/86e7d829a466cacd5658a22073e27d49d39dac72cc18216ac4963ed5463c5bbc/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d253345253344253230352e362d3838393242462e7376673f7374796c653d666c61742d737175617265)](https://php.net/)[![License](https://camo.githubusercontent.com/0f304d4a3b0666083c44d8b9a45db264302bfe89989386a169f091d4fd2553fe/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f757566363432392f4d696e6b456c656374726f6e4472697665722e7376673f7374796c653d666c61742d737175617265)](https://github.com/uuf6429/MinkElectronDriver/blob/master/LICENSE)[![Coverage](https://camo.githubusercontent.com/04f026172140aaa176034e16078e79660957926fcb856fb7291232c430b59858/68747470733a2f2f696d672e736869656c64732e696f2f636f6465636f762f632f6769746875622f757566363432392f4d696e6b456c656374726f6e4472697665722e7376673f7374796c653d666c61742d737175617265)](https://codecov.io/github/uuf6429/MinkElectronDriver?branch=master)[![Packagist](https://camo.githubusercontent.com/ae748e8cba42a1e3bfce2bb076dc4f83d0d9eda214aec72d77dcac5fdbe3aab2/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f757566363432392f6d696e6b2d656c656374726f6e2d6472697665722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/uuf6429/mink-electron-driver)[![Dependency Status](https://camo.githubusercontent.com/5db500bb703cba855c29a69e4ffd12b2b9b4571eda457c60d88999d094effa0d/68747470733a2f2f696d672e736869656c64732e696f2f67656d6e617369756d2f757566363432392f4d696e6b456c656374726f6e4472697665722e7376673f7374796c653d666c61742d737175617265)](https://beta.gemnasium.com/projects/github.com/uuf6429/MinkElectronDriver)

Mink Electron Driver (replaces [JsonWireProtocol](https://github.com/SeleniumHQ/selenium/wiki/JsonWireProtocol) and [PhantomJS](http://phantomjs.org/) with [Electron](http://electron.atom.io/))

Electron is between 2 to 3 times faster than PhantomJS ([source](https://github.com/segmentio/nightmare/issues/484)).

Table Of Contents
-----------------

[](#table-of-contents)

- [Mink Electron Driver](#mink-electron-driver)
    - [Table Of Contents](#table-of-contents)
    - [Features and Advantages](#features-and-advantages)
    - [Requirements](#requirements)
    - [Installation](#installation)
    - [How Does It Work?](#how-does-it-work)

Features and Advantages
-----------------------

[](#features-and-advantages)

- Fully-featured web browser
- Quite fast, compared to alternatives
- Built with modern components
- Well supported (Electron receives frequent updates)
- Easily understandable codebase (it's either PHP or JS)
- Well tested (in addition to Mink driver tests, there are others)

Requirements
------------

[](#requirements)

There a few things which are not taken care of automatically depending on your system.

- Basics
    - PHP (5.5+) and Composer
    - Node.js (4+) and npm
- Linux
    - If run headless (ie, without a desktop) you need to install xvfb
    - Some libraries are required, [more details here](https://electron.atom.io/docs/all/#prerequisites)
- Windows
    - Build Tools may be required. These can be installed [with one npm command](https://github.com/felixrieseberg/windows-build-tools#windows-build-tools)

Installation
------------

[](#installation)

First make sure that the [requirements](#requirements) above are met.

Next, simply install the driver in your Behat project via [Composer](https://getcomposer.org/):

```
composer require uuf6429/mink-electron-driver
```

How Does It Work?
-----------------

[](#how-does-it-work)

```
       PHP + Mink Driver Interface                    Node.js + Electron API
 ________________  |  ______________________     _____________  |  _______________
|  Behat + Mink  |_v_|       Client         |___|    Server   |_V_|   Electron    |
| (Your Project) |---| (ElectronDriver.php) |---| (Server.js) |---| (Web Browser) |
'----------------'   '----------------------' ^ '-------------'   '---------------'
                                              |
                      DNode comm. over UDS (with inet sockets fallback)

```

Since one cannot easily control Node.js from PHP, a client-server approach was taken, with a fast and lightweight transport (unix domain sockets) protocol (dnode).

The driver on the PHP side simply tells the server what to do and it controls the Electron web browser.

The main reason why a client-server approach was taken is that Mink is synchronous by design.

###  Health Score

23

↓

LowBetter than 27% of packages

Maintenance0

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~55 days

Recently: every ~69 days

Total

6

Last Release

3022d ago

PHP version history (2 changes)1.0.0PHP &gt;=5.5

1.2.0PHP &gt;=5.6

### Community

Maintainers

![](https://www.gravatar.com/avatar/450767af6ef832ad662c169bf718d6d25c025c08b2d91b810959d190bccebba1?d=identicon)[uuf6429](/maintainers/uuf6429)

---

Top Contributors

[![uuf6429](https://avatars.githubusercontent.com/u/230049?v=4)](https://github.com/uuf6429 "uuf6429 (144 commits)")

---

Tags

electronjson-wire-protocolmink-drivermink-electron-driverphantomjsphp

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/uuf6429-mink-electron-driver/health.svg)

```
[![Health](https://phpackages.com/badges/uuf6429-mink-electron-driver/health.svg)](https://phpackages.com/packages/uuf6429-mink-electron-driver)
```

###  Alternatives

[civicrm/civicrm-core

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

728272.9k20](/packages/civicrm-civicrm-core)[drevops/behat-steps

Collection of steps for Behat

25381.7k3](/packages/drevops-behat-steps)[swoole-bundle/swoole-bundle

Open/Swoole Symfony Bundle

6650.4k](/packages/swoole-bundle-swoole-bundle)[abantecart/ups-php

UPS PHP SDK based on OAuth

1815.3k](/packages/abantecart-ups-php)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
