▲ 111 r/rust

Aurora the browser engine in rust programming language | Rendering Update

https://preview.redd.it/h2wwmqgloj4h1.png?width=1437&format=png&auto=webp&s=d85492c3035ad0cbe3a212522198b60c70843b9d

Thanks

For full transparency here are the crates im using . Trying really hard to have recent update to date versions:

[package]

name = "aurora"

version = "0.1.0"

edition = "2024"

[features]

default = []

media-ffmpeg = ["dep:ffmpeg-next"]

stylo-bridge = [

"dep:app_units",

"dep:atomic_refcell",

"dep:euclid",

"dep:servo_style",

"dep:stylo_atoms",

"dep:stylo_dom",

"dep:stylo_traits",

]

taffy-document = []

[dependencies]

rustls = { version = "0.23", features = ["ring"] } # still needed for install_crypto_provider()

wgpu = "29.0.3"

vello = "0.9.0"

pollster = "0.4.0"

boa_engine = "0.21.1"

boa_gc = "0.21.1"

ab_glyph = "0.2"

rustybuzz = "0.20.1"

peniko = "0.6"

image = "0.25.10"

ffmpeg-next = { version = "8.1.0", optional = true }

html5ever = "0.39.0"

markup5ever = "0.39.0"

cssparser = "0.37.0"

selectors = "0.38.0"

precomputed-hash = "0.1"

taffy = "0.10.1"

parley = "0.7"

reqwest = { version = "0.12", features = ["blocking", "rustls-tls", "gzip", "deflate", "brotli"], default-features = false }

usvg = "0.47.0"

winit = "0.30.13"

servo_style = { package = "stylo", version = "0.17.0", optional = true }

stylo_dom = { version = "0.17.0", optional = true }

stylo_atoms = { version = "0.17.0", optional = true }

atomic_refcell = { version = "0.1.14", optional = true }

euclid = { version = "0.22.14", optional = true }

app_units = { version = "0.7.8", optional = true }

url = "2.5.8"

stylo_traits = { version = "0.17.0", optional = true }

Trying out adding stylo recently but its still not fully integrated yet 😞

Some depedencies like rusty buzz are outdated . As far as i know Parley already uses harf rust or the more modern version.

Still cleaning up a lot of the code that didnt use the best crates for the problem yet and used custom parsers for everything which is very idiotic for browser development and i am still working on the migration to the industry standard crates .
Also obviously big props to the blitz and servo team for developing the crates im using . Without them Aurora could not exist.

reddit.com
u/Inevitable_Back3319 — 10 days ago

Making a browser engine in rust

Hi,

Aurora is a browser engine in rust aligned with blitz in terms of crates.
Using a lot of line bender crates for gpu rendering . Some crates were created for blitz . Some crates are used in servo.

So whats the difference between aurora and servo or even blitz?

My idea is making a indentity first browser that uses the AT protocol . A lot of browser arquitecture is tackled and associated with big centralized companies and their ecosystem.

The idea for this project is i just wanted a completly sovereign browser with no association with a big company like google or even mozilla.

github.com
u/Inevitable_Back3319 — 16 days ago