apuppet =======

npm install browsertap
1 downloads in the last week
6 downloads in the last month

Apuppet is an utility which allows you to easily launch, and control applications from the command line. It was built to launch different browser versions for cross-browser testing.


  Usage: browsertap [options] [command]


    start <appName> [args] starts an application


    -h, --help           output usage information
    -c, --config <path>  browsertap configuration file

Terminal Example

Launching chrome 25

browsertap start chrome@25

Launching multiple applications:

browsertap start chrome@25+firefox@18

Command line examples


In /usr/local/etc/browsertap/config.json

  "directory": "/path/to/apps/dir"

Structure of /path/to/apps/dir:


  • chrome/ - application name
    • - application driver
    • versions/ - application driver
      • 10.lnk
      • 11.lnk
    • settings/
      • 10 11 12/
  • safari/
    • version/
      • ...
    • settings/
      • ...

browsertap API


var browsertap = require("browsertap")({
  directory: "./path/to/apps"

Array browsertap.applications

Returns all the loaded applications


Starts an application

Application Driver API

A basic application driver looks like this:

class ChromeDriver extends AppDriver


  start: (options, callback) ->
    callback null, new AppProcess @, callback

Application AppDriver.start options, callback


  • version - application version to run
  • args - arguments to pass to the command line

callback - called when the application has successfuly spawned

Array AppDriver.running()

Returns the running processes

Application.stop callback

Stops the application process

Application.exec options, callback

executes a command against the running process

Application.restart options

Restarts the application process


TRUE if the application is running

Application.on event, callback

Adds an event listener to the application process

stop - emitted when the process exits start - emitted when the application starts

module.exports = ChromeDriver

npm loves you