Installation methods
workerd can be installed in two ways:- Via npm (recommended): Quick installation using prebuilt binaries
- Build from source: Full control and latest features
Supported platforms
workerd is tested and supported on:- Linux: x86-64 and arm64 architectures
- macOS: x86-64 and arm64 architectures (macOS 13.5 or higher)
- Windows: x86-64 architecture
On other POSIX systems supported by V8, workerd may work but requires additional configuration.
Install via npm
The easiest way to get started with workerd is using the prebuilt binaries distributed through npm.Install using npx
You can run workerd directly without installation:This downloads and runs the appropriate binary for your platform.
System requirements
Prebuilt binaries require:- Linux
- macOS
- Windows
- glibc 2.35 or higher (included in Ubuntu 22.04, Debian Bookworm)
- x86_64 CPU with SSE4.2 and CLMUL extensions, or arm64 CPU with CRC extension
Build from source
Building workerd from source gives you the latest features and full control over the build.Prerequisites
- Linux
- macOS
- Windows
Install the required dependencies:Requirements:
- Clang 19+ (earlier versions may work but aren’t officially supported)
- libc++ 19+
- LLD 19+
- Python 3 with distutils
- Tcl 8.6
- Bazelisk (recommended) or Bazel
If clang is installed as Or specify it when building:
clang-<version>, create a symlink:Build workerd
Build with Bazel
Build the workerd binary:For a release build with optimizations:For an even faster build with link-time optimization (requires recent clang):
Troubleshooting build issues
Dependencies installed but build still fails
Dependencies installed but build still fails
If you installed dependencies after a failed build attempt, Bazel may have cached the old configuration:Then try building again.
Clang version errors
Clang version errors
Ensure you’re using clang 19 or higher:If you have multiple versions installed, specify the version:
Out of memory during build
Out of memory during build
Bazel can use a lot of memory. Limit parallel jobs:
Development tools
For development, consider installing additional tools:Just command runner
The workerd repository uses just for common tasks:Next steps
Quick start
Create your first workerd application
Configuration
Learn about workerd’s configuration format
Examples
Browse sample configurations
Development guide
Deep dive into building and developing workerd