Skip to main content

browser.autos

Cloud-Native Headless Browser Platform

Write code. Run anywhere. Scrape everything.

Launch a resilient headless browser fleet in seconds. browser.autos combines hardened Docker images, battle-tested APIs, and real-time observability so your automation workloads never miss a beat.

โšก One Command to Start

docker run -d -p 3001:3001 \
  -e JWT_SECRET=your-secret \
  -e DEFAULT_ADMIN_USERNAME=browserautos \
  -e DEFAULT_ADMIN_PASSWORD=browser.autos \
  --shm-size=2gb \
  browserautos/browser-autos:latest

# Test it
curl http://localhost:3001/health

That's it. Your headless browser platform is running.

๐Ÿ”‘ Getting Your Access Token:

๐Ÿ’ก Default credentials: browserautos / browser.autos

๐Ÿ“‹ Check logs: docker logs browser-autos | grep "Default credentials"

๐Ÿš€ Login API: POST /auth/login with username/password

Why browser.autos?

Container-First

Deploy anywhere - Docker, Kubernetes, AWS, GCP, Azure

Lightning Fast

85% faster with intelligent browser pool management

Secure by Default

JWT auth, non-root execution, resource limits

Multi-Architecture

AMD64 + ARM64 (Apple Silicon, AWS Graviton)

Observable

Prometheus metrics + structured logging

Developer Friendly

REST APIs + WebSocket CDP + Swagger docs

What You Can Build

Pair browser.autos with your existing CI pipelines, customer-facing products, or internal tools. The platform speaks your language and scales from prototypes to petabyte-level crawlers.

Screenshot Service

Visual regression testing, thumbnails

PDF Generator

Reports, invoices at scale

Web Scraper

Price monitoring, content aggregation

Testing Platform

E2E tests, CI/CD integration

Live Debugger

Interactive browser playground, real-time debugging

Works with Your Favorite Language

1// Puppeteer Example
2const puppeteer = require('puppeteer-core');
3const axios = require('axios');
4
5// 1. Get access token
6const { data } = await axios.post('http://localhost:3001/auth/login', {
7  username: 'browserautos',
8  password: 'browser.autos'
9});
10const token = data.data.accessToken;
11
12// 2. Connect with token in URL
13const browser = await puppeteer.connect({
14  browserWSEndpoint: `ws://localhost:3001/ws?token=${token}`
15});
16
17const page = await browser.newPage();
18await page.goto('https://example.com');
19const screenshot = await page.screenshot();
20await browser.close();

Frequently Asked Questions

Is browser.autos open source?

Yes. The platform is licensed under MIT, making it free for personal and commercial projects. Fork it, customize it, and deploy anywhere.

Can I deploy browser.autos on Kubernetes?

Absolutely. The container image ships with sensible defaults for Kubernetes and other orchestrators, including health checks and resource limits.

What integrations are supported?

Use the REST API for screenshots, PDFs, scraping, and metrics, or connect Playwright and Puppeteer directly through the secure WebSocket endpoint.