servo /servo

Servo aims to empower developers with a lightweight, high-performance alternative for embedding web technologies in applications.

★ 38,451⑂ 3,887👁 499⑃ 32,600● 16,904▤ 17◈ 152
RustMPL-2.0Created 2012-02-08servo.org
38,451
stars
+12
3,887
forks
499
watchers
32,600
prs
16,904
issues
17
releases
152
discussions

README

The Servo Parallel Browser Engine Project

Servo is a prototype web browser engine written in the
Rust language. It is currently developed on
64-bit macOS, 64-bit Linux, 64-bit Windows, 64-bit OpenHarmony, and Android.

Servo welcomes contribution from everyone. Check out:

- The Servo Book for documentation
- servo.org for news and guides

Coordination of Servo development happens:
- Here in the Github Issues
- On the Servo Zulip
- In video calls advertised in the Servo Project repo.

 Getting started

For more detailed build instructions, see the Servo Book under [Getting the Code] and [Building Servo].

[Getting the Code]: https://book.servo.org/building/getting-the-code.html
[Building Servo]: https://book.servo.org/building/building.html

 macOS

- Download and install Xcode and brew.
- Install uv: curl -LsSf https://astral.sh/uv/install.sh | sh 
- Install rustup: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
- Restart your shell to make sure cargo is available
- Install the other dependencies: ./mach bootstrap
- Build servoshell: ./mach build

 Linux

- Install curl:
  - Arch: sudo pacman -S --needed curl
  - Debian, Ubuntu: sudo apt install curl
  - Fedora: sudo dnf install curl
  - Gentoo: sudo emerge net-misc/curl
- Install uv: curl -LsSf https://astral.sh/uv/install.sh | sh 
- Install rustup: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
- Restart your shell to make sure cargo is available
- Install the other dependencies: ./mach bootstrap
- Build servoshell: ./mach build

 Windows

- Download uv, and rustup
  - Be sure to select Quick install via the Visual Studio Community installer
- Ensure that winget is available. It should be preinstalled on Windows 10 1809+ and Windows 11, otherwise can be manually installed.
- In the Visual Studio Installer, ensure the following components are installed:
  - Windows 10/11 SDK (anything = 10.0.19041.0) (Microsoft.VisualStudio.Component.Windows{10, 11}SDK.{=19041})
  - MSVC v143 - VS 2022 C++ x64/x86 build tools (Latest) (Microsoft.VisualStudio.Component.VC.Tools.x86.x64)
  - C++ ATL for latest v143 build tools (x86 & x64) (Microsoft.VisualStudio.Component.VC.ATL)
- Restart your shell to make sure cargo is available
- Install the other dependencies: .\mach bootstrap
- Build servoshell: .\mach build

 Android

- Ensure that the following environment variables are set:
  - ANDROID_SDK_ROOT
  - ANDROID_NDK_ROOT: $ANDROID_SDK_ROOT/ndk/28.2.13676358/
 ANDROID_SDK_ROOT can be any directory (such as ~/android-sdk).
  All of the Android build dependencies will be installed there.
- Install the latest version of the Android command-line
  tools to
  $ANDROID_SDK_ROOT/cmdline-tools/latest.
- Run the following command to install the necessary components:
  shell
  sudo $ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager --install \
   "build-tools;36.0.0" \
   "emulator" \
   "ndk;29.0.14206865" \
   "platform-tools" \
   "platforms;android-37" \
   "system-images;android-3

Top issues

Discussions

Latest release

v0.7.0 v0.7.0 2026-10-05
Servo v0.7.0 is ready, containing all the changes from September. 

 Trying out the Servo Tech Demo

[troubleshooting guide]: https://servo.org/download/troubleshooting

 Linux

If you see an error loading shared libraries when starting servo on Linux, please refer to the [troubleshooting guide].

 HarmonyOS

Please note that the servo-aarch64-linux-ohos.hap attached here is signed for OpenHarmony, not HarmonyOS.
For HarmonyOS self-signing is currently required - You can download the servo-aarch64-linux-ohos.so shared library and use DevEco Studio to follow the instructions in the

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON