BuildABrowser

Browser Source (GitHub) Webpage Source (GitHub) Discord

BuildABrowser

BuildABrowser is a project aiming to build a browser and its rendering engine in Java, and then document it such that others can rebuild it for themselves.

Jump to Screenshots | View on YouTube

Download a build:

Java 24:

java -Xms32m -XX:MaxHeapFreeRatio=10 -XX:MinHeapFreeRatio=10 -XX:+UnlockExperimentalVMOptions -XX:+UseCompactObjectHeaders -Djava.net.preferIPv4Stack=true -jar buildabrowser.jar

Java 25 (LTS):

java -Xms32m -XX:MaxHeapFreeRatio=10 -XX:MinHeapFreeRatio=10 -Djava.net.preferIPv4Stack=true -jar buildabrowser.jar

By default, BuildABrowser uses Skija for drawing. You can use Java2D by adding the --use-java2d.

Take a look at some steps:

See a demo!

A screenshot containing two BuildABrowser windows