Kestrel 1.1 — UI polish + Chrome comparison
Measured against Chrome 151 on an M1 / 8 GB / macOS 26.5, same five pages, same order:
| Kestrel | Chrome 151 | ||
|---|---|---|---|
| Memory — 5 tabs loaded | 701 MB | 1.93 GB | 2.8x less |
| Memory — same 5 tabs after idling | 236 MB | 1.91 GB | 8.3x less |
| Memory — idle, one empty tab | 28 MB | 403 MB | 14.2x less |
| Processes for those 5 tabs | 8 | 47 | 5.9x fewer |
| CPU while idling on those 5 tabs | 0.04% of a core | 0.11% of a core | 3.1x less |
| Cold launch to a window | 0.34 s | 0.41 s | 1.2x faster |
| App on disk | 904 KB | 2.0 GB | ~2,400x smaller |
Chrome ran on a throwaway profile with no extensions, which makes it lighter than
a typical real-world Chrome — the comparison is deliberately generous to it. Reproduce
it yourself with ./tools/bench.sh; the README table is generated from the raw data.
UI and UX
- Toolbar icons were being drawn at the default thin weight in secondary grey, which
read as disabled. They are now semibold in full contrast, with a rounded hover
highlight, and dim only when genuinely unavailable. - The address bar is a proper capsule with a security glyph (lock, warning or search)
and an accent border when focused. Escape reverts what you typed. - Native vibrant toolbar background with a hairline above the page.
- The memory readout is a soft capsule rather than loose grey text.
- Right-click a tab for reload, duplicate, copy address, put to sleep, close, and
close others. Double-click empty tab-strip space for a new tab. - ⌘⇧T reopens the tab you just closed.
- Opening several links at once now focuses the first, like Safari and Chrome, rather
than whichever was last in the list.
Fixes
- Clicking a link while Kestrel was closed could open two windows.
window.open/target=_blanknow builds its web view from the configuration
WebKit supplies, as WebKit requires.- The memory readout no longer calls
proc_pidpathon every process on the machine
on every tick.
Install
Download Kestrel.zip, unzip, drag to /Applications, then:
xattr -dr com.apple.quarantine /Applications/Kestrel.app
open /Applications/Kestrel.appThat step is required: Kestrel is ad-hoc signed and not notarized, so macOS
quarantines it as an internet download and claims it is damaged. Apple Silicon,
macOS 13+.