· via Hacker News – Front Page (native)
Ladybird ships off-thread layout, a JavaScript JIT, and passes Safari TP on WPT
Ladybird's October update moved style and layout off the main thread, added a JavaScript JIT, replaced its WebAssembly engine, and passed Safari Technology Preview on Web Platform Tests.

Ladybird's October 2026 progress report packs an unusual number of engine milestones into one month: style, layout and paint recording now run on separate threads alongside JavaScript, LibJS gained an optimizing JIT, the WebAssembly engine was rebuilt, and the browser moved ahead of Safari Technology Preview on Web Platform Tests.
Style and layout leave the main thread
Browsers traditionally run JavaScript, style recalculation and layout sequentially on a single main thread, so a long script freezes everything except compositor-driven animation. According to the Ladybird team, style and layout now live on their own thread and paint recording on another, executing while JavaScript runs. When a script queries layout state such as an element's dimensions, it waits for outstanding layout work to finish, so it never reads stale data.
The visible effect is that CSS animations, including ones animating layout properties like width and font-size, keep running during long scripts, and :hover keeps responding. The render thread finds the element under the cursor, applies hover styles, updates the cursor and paints new frames, with hover events firing on the main thread once the script yields. The team says it knows of no other browser that does this today.
LibJS gains an optimizing JIT
On Linux and macOS, LibJS now compiles hot JavaScript to machine code on both x86-64 and AArch64. The project had previously rejected a JIT and tuned its interpreter instead, but reasoned that even doubling interpreter speed would only shorten a 300ms hang to 150ms, which users would still notice. The new compiler is intentionally conventional: speculative optimization driven by runtime type profiling, like mainstream engines.
While code warms up, the engine records the types and object shapes it encounters; compiled code bets on those observations, for instance that a value is always an integer, and inlines small functions. During development, a fuzzer ran the same code through both the JIT and the interpreter and compared results to catch bugs.
A rebuilt WebAssembly engine
The old C++ engine and its Cranelift backend were replaced by a new engine with its own interpreter and JIT. It supports newer Wasm features the predecessor lacked, such as exception handling and garbage collection, and scores about 7x higher on the JetStream 3 Wasm workloads both engines can run. The interpreter is written in flap, the small compiler language built in July; one source builds for x86-64, AArch64 and Windows x64, and hot functions can move to the JIT mid-loop. In practice, JSLinux, an x86 PC emulator, now boots Alpine Linux to a shell in 1.8 seconds, against 1.5 seconds for Chrome.
Ahead of Safari Technology Preview on WPT
Ladybird passed Safari Technology Preview on Web Platform Tests on October 26 and ended the month at 2,184,722 subtests, a gain of 75,650. Most of that landed in five days, from roughly 2.12 million on October 22 to 2.18 million on October 27, after the team directed AI coding agents at the test suite to fill in missing functionality. The biggest single-area gains were about 30,000 subtests in /css and 10,000 in /editing.
A redesigned UI, new features and hardening
For the first time the project mapped out a complete UI design rather than accumulating ad-hoc tweaks, covering tabs, toolbars, menus and about: pages on macOS and Linux, in light, dark and a violet dark theme for private windows. Tabs can be pinned and searched, windows restore on launch, form controls were restyled with a date and time picker, and scrolling gained smooth wheel input, elastic overscroll on macOS, touchpad momentum and auto-hiding scrollbars.
Site compatibility improved across Google Slides, GitHub's Mermaid diagrams, bot checks at nytimes.com and reuters.com, and Instagram video first frames. New features include initial VoiceOver and Orca screen reader support, macOS spell checking, Picture-in-Picture, text fragment links, and permission prompts for location and microphone. Platform work added MathML, masonry via grid-lanes, corner-shape, much of anchor positioning, calc-size(), vertical writing modes, the HTML Sanitizer API, Touch Events and several timing APIs. On the security side, fixes closed paths where a compromised sandboxed renderer could open arbitrary files or fake user clicks, and cross-site iframes now get their own renderer process by default.
Why it matters
Ladybird is an independent engine built from scratch, not a Chromium, Gecko or WebKit derivative, and this update clears thresholds that historically separated hobby projects from production browsers: an optimizing JIT, competitive WebAssembly, off-main-thread rendering the team says no shipping browser matches, and a Web Platform Tests score ahead of Apple's preview channel. The WPT jump is also a notable datapoint for AI coding agents producing large cumulative wins on incremental conformance work. For a web dominated by one rendering engine, a fast-maturing, sponsor-funded alternative matters well beyond its current user count.
- #ladybird
- #browser-engine
- #javascript
- #web-platform-tests
- #css