Installation β
Get Piggy up and running in minutes.
Requirements β
- Bun β₯ 1.0 installed (or Node.js β₯ 18)
- Nothing Browser binary v0.1.14+
Step 1: Install the Package β
bash
bun add nothing-browserStep 2: Download the Binary β
Download from GitHub Releases.
Linux / macOS Users (Simple) β
bash
# Extract
tar -xzf nothing-browser-headless-*-linux-x86_64.tar.gz
# Make executable
chmod +x nothing-browser-headless
# Your project structure:
# your-project/
# βββ nothing-browser-headless # β binary here
# βββ node_modules/
# βββ package.json
# βββ your-script.tsWindows Users (Custom Path Required) β
Windows requires .dll files that must stay with the .exe.
Our recommendation:
- Extract the zip
- Rename the folder to
brow - Place
browfolder in your project root
C:\my-scraper\
βββ brow\
β βββ nothing-browser-headless.exe
βββ package.json
βββ index.tsThen in your code:
ts
await piggy.launch({
binary: "brow/nothing-browser-headless.exe"
});Step 3: Verify Installation β
Create test.ts:
ts
import piggy from "nothing-browser";
// Linux / macOS
await piggy.launch({ mode: "tab", binary: "headless" });
// Windows
// await piggy.launch({ mode: "tab", binary: "brow/nothing-browser-headless.exe" });
console.log("β
Piggy is working!");
await piggy.close();Run:
bash
bun run test.tsTroubleshooting β
"Binary not found" β
Linux/macOS: Ensure binary is in project root and executable (chmod +x)
Windows: Use full path with .exe and keep .dll files in same folder
"Connection refused" β
Run binary manually once:
bash
./nothing-browser-headless
# Wait for "Headless daemon on socket"
# Press Ctrl+C, then run script again"Missing dependencies" (Linux) β
bash
# Debian/Ubuntu
sudo apt install libqt6webenginewidgets6 libqt6webenginecore6Next Steps β
- Quick Start β Your first scraper
- Core Concepts β Launch & register
- Find API β Query DOM elements
Nothing Ecosystem Β· Ernest Tech House Β· Kenya Β· 2026