An open API service indexing awesome lists of open source software.

https://github.com/saifyxpro/headlessx

A lightweight, self-hosted headless browser automation platform. Designed as an alternative to Browserless, built for speed, privacy, and scalability.
https://github.com/saifyxpro/headlessx

automation automation-api automation-platform browser-automation browser-testing browserless chrome-headless chromedriver container-automation data-extraction headless headless-chrome headless-service playwright playwright-automation puppeteer scraping-service web-automation web-scraping

Last synced: 12 days ago
JSON representation

A lightweight, self-hosted headless browser automation platform. Designed as an alternative to Browserless, built for speed, privacy, and scalability.

Awesome Lists containing this project

README

          

![HeadlessX Logo](assets/logo-hr.svg)

### **The World's Most Advanced Anti-Detection Scraping Full Stack Web App**


[![Version](https://img.shields.io/badge/Version-2.0.0-blueviolet?style=for-the-badge&logo=v&logoColor=white)](https://github.com/)
[![Release](https://img.shields.io/badge/Release-January%202026-success?style=for-the-badge&logo=github&logoColor=white)](https://github.com/)
[![Detection](https://img.shields.io/badge/Detection%20Rate-0%25-brightgreen?style=for-the-badge&logo=shield&logoColor=white)](https://github.com/)
[![Status](https://img.shields.io/badge/Status-Production%20Ready-blue?style=for-the-badge&logo=statuspage&logoColor=white)](https://github.com/)


[![Node.js](https://img.shields.io/badge/Node.js-22+-339933?style=for-the-badge&logo=nodedotjs&logoColor=white)](https://nodejs.org/)
[![Next.js](https://img.shields.io/badge/Next.js-16-000000?style=for-the-badge&logo=nextdotjs&logoColor=white)](https://nextjs.org/)
[![Camoufox](https://img.shields.io/badge/Camoufox-Firefox-FF7139?style=for-the-badge&logo=firefox&logoColor=white)](https://github.com/AurelicButter/camoufox)
[![TypeScript](https://img.shields.io/badge/TypeScript-5.9+-3178C6?style=for-the-badge&logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
[![Playwright](https://img.shields.io/badge/Playwright-1.58-45BA4B?style=for-the-badge&logo=playwright&logoColor=white)](https://playwright.dev/)


[![License](https://img.shields.io/badge/License-MIT-blue?style=flat-square)](LICENSE)
[![PRs Welcome](https://img.shields.io/badge/PRs-Welcome-brightgreen?style=flat-square)](CONTRIBUTING.md)
[![Maintenance](https://img.shields.io/badge/Maintained-Yes-green?style=flat-square)](https://github.com/)
[![Made with Love](https://img.shields.io/badge/Made%20with-โค๏ธ-red?style=flat-square)](https://github.com/)

---

### ๐ŸŽฏ **0% Detection Rate** on all major anti-bot systems

*Powered by **Camoufox** โ€” Firefox with C++ level fingerprint spoofing*

[๐Ÿ“– Documentation](#-api-endpoints) โ€ข [๐Ÿš€ Quick Start](#-quick-start) โ€ข [๐Ÿ› Report Bug](https://github.com/) โ€ข [โœจ Request Feature](https://github.com/)

---

## ๐Ÿ†• What's New in V2.0

| ๐ŸฆŠ **Camoufox Engine** | ๐Ÿ›ก๏ธ **0% Detection** | โšก **3x Faster** |
| :---------------------------------------: | :------------------------------------------: | :-----------------------: |
| Firefox with binary-level stealth patches | Passes CreepJS, Sannysoft, & all major tests | Optimized context pooling |

### V2.0 Changelog

```diff
+ ๐ŸฆŠ NEW: Camoufox browser engine (replaces Chromium + stealth plugins)
+ ๐Ÿ›ก๏ธ NEW: 0% headless detection rate (was 67%+)
+ ๐Ÿ”’ NEW: Built-in WebRTC leak protection
+ ๐ŸŽญ NEW: C++ level Canvas/WebGL/AudioContext fingerprint spoofing
+ โšก IMPROVED: Faster browser launches with persistent contexts
- ๐Ÿงน REMOVED: playwright-extra (no longer needed)
- ๐Ÿงน REMOVED: puppeteer-extra-plugin-stealth (no longer needed)
```

---

## ๐Ÿ“Š Detection Benchmark Comparison

Tool
Headless Detection
Stealth Score
Engine

๐ŸฆŠ HeadlessX V2.0 (Camoufox)
โœ… 0%
โœ… 0%
Firefox (C++ patched)

HeadlessX V1 (Playwright Extra)
โŒ 67%
โš ๏ธ 50%
Chromium (JS patches)

Puppeteer Stealth
โŒ 33%
โŒ 80%
Chromium (JS patches)

Vanilla Playwright
โŒ 100%
โŒ 100%
Chromium

Vanilla Selenium
โŒ 100%
โŒ 100%
Chrome

*Lower scores = better (0% = undetectable)*

---

## ๐Ÿค– Scrapers

| **Google SERP** | ๐ŸŒ **Website Scraping** |
| :----------------------------------------------------------------------: | :---------------------------------------: |
| Extract search results with zero detection | Scrape any website with full JS rendering |
| โœ… **Live** | โœ… **Live** |

### Coming Soon

| **Amazon** | **LinkedIn** | **Twitter** | **Instagram** |
| :-----------------------------------------------------------------: | :---------------------------------------------------------------------: | :-------------------------------------------------------------------: | :-----------------------------------------------------------------------: |
| Product & Reviews | Job Listings & Profiles | Tweets & Trends | Posts & Stories |

---

## ๐Ÿ–ฅ๏ธ UI Screenshots

### Google SERP Scraper
![Google SERP UI](assets/google-serp-results.png)

### Website Scraper
![Website Scraper UI](assets/web-scrape-results.png)

---

## ๐Ÿ“ธ Proof of Undetectability

### BrowserScan (100% Passed)
![BrowserScan](assets/Browserscan_Bot_Detection_Passed.png)

| **Pixelscan (Human Detection)** | **Profile Tested with Proxy** |
| :--------------------------------------------: | :----------------------------------------: |
| ![Pixelscan](assets/Pixel_Human_Detection.png) | ![Proxy Test](assets/USA_PROXY_TESTED.png) |

---

## ๐Ÿ“‹ Table of Contents

- [๐Ÿ†• What's New in V2.0](#-whats-new-in-v20)
- [V2.0 Changelog](#v20-changelog)
- [๐Ÿ“Š Detection Benchmark Comparison](#-detection-benchmark-comparison)
- [๐Ÿค– Scrapers](#-scrapers)
- [Coming Soon](#coming-soon)
- [๐Ÿ–ฅ๏ธ UI Screenshots](#๏ธ-ui-screenshots)
- [Google SERP Scraper](#google-serp-scraper)
- [Website Scraper](#website-scraper)
- [๐Ÿ“ธ Proof of Undetectability](#-proof-of-undetectability)
- [BrowserScan (100% Passed)](#browserscan-100-passed)
- [๐Ÿ“‹ Table of Contents](#-table-of-contents)
- [โšก Quick Start](#-quick-start)
- [1๏ธโƒฃ Clone \& Configure Environment](#1๏ธโƒฃ-clone--configure-environment)
- [2๏ธโƒฃ Install Dependencies](#2๏ธโƒฃ-install-dependencies)
- [3๏ธโƒฃ Install AI Models (CAPTCHA Solving)](#3๏ธโƒฃ-install-ai-models-captcha-solving)
- [4๏ธโƒฃ Setup Database](#4๏ธโƒฃ-setup-database)
- [5๏ธโƒฃ Start Development Server](#5๏ธโƒฃ-start-development-server)
- [6๏ธโƒฃ Access the Application](#6๏ธโƒฃ-access-the-application)
- [Custom Ports](#custom-ports)
- [๐Ÿ”ฅ Key Features](#-key-features)
- [๐ŸฆŠ Camoufox Stealth Engine (V2.0)](#-camoufox-stealth-engine-v20)
- [๐Ÿ–ฅ๏ธ Modern Dashboard](#๏ธ-modern-dashboard)
- [๐ŸŒ API Endpoints](#-api-endpoints)
- [Website Scraping APIs](#website-scraping-apis)
- [Google SERP APIs](#google-serp-apis)
- [Example Request](#example-request)
- [Example Response](#example-response)
- [Configuration](#configuration)
- [Environment Variables](#environment-variables)
- [Dashboard Settings](#dashboard-settings)
- [General Configuration](#general-configuration)
- [Browser Engine (Camoufox)](#browser-engine-camoufox)
- [Proxies](#proxies)
- [๐Ÿ› ๏ธ Manual Setup](#๏ธ-manual-setup)
- [Backend](#backend)
- [Frontend](#frontend)
- [๐Ÿค Contributing](#-contributing)
- [๐Ÿ“ License](#-license)
- [๐ŸŒŸ Star History](#-star-history)
- [Built with โค๏ธ using cutting-edge technologies](#built-with-๏ธ-using-cutting-edge-technologies)

---

## โšก Quick Start

> **Prerequisites**:
> - [Node.js 18+](https://nodejs.org/) (v22+ recommended)
> - [pnpm 9+](https://pnpm.io/) (`npm install -g pnpm`)
> - **PostgreSQL Database** โ€” either:
> - [Supabase](https://supabase.com/) (recommended, free tier available)
> - Self-hosted PostgreSQL 14+

### 1๏ธโƒฃ Clone & Configure Environment

```bash
git clone https://github.com/your-repo/HeadlessX.git
cd HeadlessX

# Copy environment template
cp .env.example backend/.env
```

**Edit `backend/.env`** with your database connection:

```env
# REQUIRED: Your PostgreSQL connection string
DATABASE_URL="postgresql://user:password@host:5432/database"

# Optional: Server configuration
PORT=3001
NODE_ENV=development
```

> ๐Ÿ’ก **Supabase Users**: Find your connection string at:
> Dashboard โ†’ Settings โ†’ Database โ†’ Connection String (URI)

### 2๏ธโƒฃ Install Dependencies

```bash
# Install all packages (workspace: root, backend, frontend)
pnpm install
```

> โš ๏ธ If you see a Prisma warning during install, that's normal!
> It means you need to configure `DATABASE_URL` first, then run `pnpm db:push`.

### 3๏ธโƒฃ Install AI Models (CAPTCHA Solving)

Windows
Linux / macOS

```powershell
install.bat
```

```bash
chmod +x install.sh
./install.sh
```

### 4๏ธโƒฃ Setup Database

```bash
# Push Prisma schema to your database
pnpm db:push

# Or use migrations for production
pnpm db:migrate
```

### 5๏ธโƒฃ Start Development Server

```bash
# Start both frontend and backend concurrently
pnpm dev
```

**Or start individually:**

Windows
Linux / macOS

```powershell
scripts\start.bat
```

```bash
./scripts/start.sh
```

### 6๏ธโƒฃ Access the Application

| Service | URL | Notes |
| ----------------- | ---------------------------------------------- | ----------- |
| ๐Ÿ–ฅ๏ธ **Dashboard** | [http://localhost:3000](http://localhost:3000) | Frontend UI |
| ๐Ÿ”— **Backend API** | [http://localhost:3001](http://localhost:3001) | REST API |

### Custom Ports

You can customize ports via environment variables:

```bash
# Backend (from root)
cross-env PORT=4001 pnpm dev:backend

# Frontend (Linux/macOS)
PORT=4000 pnpm --filter headlessx-frontend dev
```

---

## ๐Ÿ”ฅ Key Features

### ๐ŸฆŠ Camoufox Stealth Engine (V2.0)

| Feature | Description |
| -------------------------- | ----------------------------------- |
| ๐Ÿ”’ **Binary-Level Patches** | Firefox modified at C++ level |
| ๐ŸŽญ **Fingerprint Spoofing** | Canvas, WebGL, AudioContext |
| ๐ŸŒ **WebRTC Protection** | No IP leaks in headless mode |
| ๐Ÿ–ฑ๏ธ **Human Behavior** | Natural mouse movements & scrolling |
| ๐Ÿ“ฑ **Device Emulation** | Realistic viewport & user agents |
| ๐Ÿšซ **Zero Detection** | Passes all anti-bot tests |

### ๐Ÿ–ฅ๏ธ Modern Dashboard

| Feature | Description |
| ------------------ | ------------------------------- |
| โš›๏ธ **Next.js 16** | React 19 with Turbopack |
| ๐ŸŽจ **HeroUI** | Beautiful dark/light mode UI |
| โš™๏ธ **Live Config** | Change settings without restart |
| ๐Ÿ“Š **Request Logs** | Full history with screenshots |
| ๐Ÿงช **Playground** | Test scraping in real-time |
| ๐Ÿ”‘ **API Keys** | Secure key management |

---

## ๐ŸŒ API Endpoints

### Website Scraping APIs

| Endpoint | Method | Description |
| ------------------------- | ------ | ---------------------------- |
| `/api/website/html` | `POST` | Get raw HTML (fast) |
| `/api/website/html-js` | `POST` | Get HTML with JS rendering |
| `/api/website/content` | `POST` | Get Markdown content |
| `/api/website/screenshot` | `POST` | Capture full-page Screenshot |
| `/api/website/stream` | `POST` | Real-time SSE Stream |

### Google SERP APIs

| Endpoint | Method | Description |
| ------------------------- | ------ | ----------------------------- |
| `/api/google-serp/search` | `POST` | Extract Google search results |
| `/api/google-serp/stream` | `GET` | Real-time SSE Stream |

### Example Request

```bash
curl -X POST http://localhost:3001/api/website/html \
-H "Content-Type: application/json" \
-H "X-API-Key: your-api-key" \
-d '{"url": "https://example.com", "stealth": true}'
```

### Example Response

```json
{
"success": true,
"data": {
"url": "https://example.com",
"title": "Example Domain",
"html": "...",
"statusCode": 200
}
}
```

---

## Configuration

### Environment Variables

> โš ๏ธ **Note**: Most configuration (Browsers, Stealth, Proxy, Timeouts) is managed directly via the **Dashboard Settings**.

Only the following core variables are required in `.env`:

| Variable | Default | Description |
| --------------------- | ----------------------- | ----------------------------------------------- |
| `PORT` | `3001` | Backend API port |
| `DATABASE_URL` | - | PostgreSQL connection (Supabase or self-hosted) |
| `NEXT_PUBLIC_API_URL` | `http://localhost:3001` | Frontend API URL |

### Dashboard Settings

Configure these live at `/settings`:

#### General Configuration
- **Headless Mode**: Run browser without UI (faster execution)
- **Browser Timeout**: Max execution time per job (default: 60000ms)
- **Max Concurrent Jobs**: Concurrent scraping jobs (recommended: 3-8)

#### Browser Engine (Camoufox)
- **Block WebRTC**: Prevent IP leaks via WebRTC
- **Camoufox GeoIP**: Spoof location based on IP
- **Enable Cache**: Cache resources for speed

#### Proxies
- Manage proxy configurations and rotation settings

---

## ๐Ÿ› ๏ธ Manual Setup

### Backend

```bash
cd backend

# 1. Configure environment
cp ../.env.example .env
# Edit .env with your DATABASE_URL

# 2. Install dependencies
pnpm install

# 3. Download Camoufox browser
npx camoufox-js fetch

# 4. Setup database
npx prisma db push

# 5. Start dev server
pnpm dev
```

### Frontend

```bash
cd frontend
pnpm install
pnpm dev
```

---

## ๐Ÿค Contributing

Contributions are welcome! Please read our [Contributing Guide](CONTRIBUTING.md) for details.

1. Fork the repository
2. Create your feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request

---

## ๐Ÿ“ License

This project is licensed under the **MIT License** - see the [LICENSE](LICENSE) file for details.

---

## ๐ŸŒŸ Star History

If you find HeadlessX useful, please consider giving it a star! โญ

---

### Built with โค๏ธ using cutting-edge technologies


[![Node.js](https://img.shields.io/badge/-Node.js-339933?style=flat-square&logo=nodedotjs&logoColor=white)](https://nodejs.org/)
[![Next.js](https://img.shields.io/badge/-Next.js-000000?style=flat-square&logo=nextdotjs&logoColor=white)](https://nextjs.org/)
[![Firefox](https://img.shields.io/badge/-Camoufox-FF7139?style=flat-square&logo=firefox&logoColor=white)](https://github.com/)
[![Playwright](https://img.shields.io/badge/-Playwright-45BA4B?style=flat-square&logo=playwright&logoColor=white)](https://playwright.dev/)
[![TypeScript](https://img.shields.io/badge/-TypeScript-3178C6?style=flat-square&logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
[![React](https://img.shields.io/badge/-React-61DAFB?style=flat-square&logo=react&logoColor=black)](https://react.dev/)
[![TailwindCSS](https://img.shields.io/badge/-TailwindCSS-06B6D4?style=flat-square&logo=tailwindcss&logoColor=white)](https://tailwindcss.com/)
[![Prisma](https://img.shields.io/badge/-Prisma-2D3748?style=flat-square&logo=prisma&logoColor=white)](https://www.prisma.io/)


**๐ŸฆŠ HeadlessX V2.0 โ€” Undetectable by Design**

*ยฉ 2026 HeadlessX. All rights reserved.*