Public Repository

Last pushed: a day ago
Short Description
A web browser 🌎 hosted as a service, to render your JavaScript web pages as HTML
Full Description

A web browser :earth_americas: hosted as a service, to render your JavaScript web pages as HTML

Uses serverful to expose Nightmare headless browser through a REST API.


  • Launch :rocket: inside a Docker container :whale: so you don't need to manage the dependencies :raised_hands: :white_check_mark:
  • Quickly deploy :runner: and easily scale :two_men_holding_hands: the number of servers by using Rancher :white_check_mark:

How to use

Use it in your terminal

Run the Docker image in a container exposing port 9453

docker run -d -p "9453:3000" hfreire/browser-as-a-service

Browse Google's website (

curl -X GET --header 'x-api-key: my-api-key' 'http://localhost:9453/open?'

Available REST API endpoints

Swagger documentation available at http://localhost:9453/docs.

Available environment variables

Variable Description Required Default value
PORT The port to be used by the HTTP server. false 3000
API_KEYS The secret keys that should be used when securing endpoints. false undefined
SO_TIMEOUT TCP socket connection timeout. false 120000
LOG_LEVEL The log level verbosity. false info
ENVIRONMENT The environment the app is running on. false undefined
ROLLBAR_API_KEY The server API key used to talk with Rollbar. false undefined

How to build

Clone the GitHub repo

git clone

Change current directory

cd browser-as-a-service

Run the NPM script that will build the Docker image

npm run build

How to contribute

You can contribute either with code (e.g., new features, bug fixes and documentation) or by donating 5 EUR. You can read the contributing guidelines for instructions on how to contribute with code.

All donation proceedings will go to the Sverige för UNHCR, a swedish partner of the UNHCR - The UN Refugee Agency, a global organisation dedicated to saving lives, protecting rights and building a better future for refugees, forcibly displaced communities and stateless people.


Read the license for permissions and limitations.

Docker Pull Command