Skip to main content

Install the package

Prerequisites

  • Node.js 22.12.0+. Reader has ESM compatibility issues with Bun - use Node.
  • x86_64 architecture for Docker. Chromium is bundled as x86_64 only, so Apple Silicon Macs must use native Node.js or a remote Linux server for Docker deployments.
  • Chrome system libraries on Linux (see below). On macOS, Chrome is resolved automatically on first run.
Bun is not supported. The underlying browser automation stack has ESM compatibility issues with the Bun runtime. Use node or npx tsx.

macOS

Nothing extra needed. Install the package and run your code - Chrome is resolved automatically on first use.

Linux (Debian / Ubuntu)

Reader needs Chrome’s system dependencies to run a headless browser. Install them with:
This is the same list used in the official Dockerfile.

Docker

Reader ships with a production-ready Dockerfile under examples/deployment/docker/ in the GitHub repo. The key constraints:
  • platform: linux/amd64 - Chromium is bundled as x86_64
  • shm_size: 2gb - Chrome uses /dev/shm heavily and crashes with the default 64 MB
  • seccomp:unconfined + cap_add: SYS_ADMIN - required for the Chrome sandbox
See the Deployment guide for the full Docker Compose setup.

Verify the install

Create a file, test.js:
Run it:
If you see a title printed, you’re done. If not, check that Chrome’s system dependencies are installed and that you’re on Node 22+.

Where to go next

Quickstart

Walk through your first scrape in more depth.

Examples

Runnable examples for batch, crawl, proxies, and more.