Feather
Experimental open-source WebKit browser for macOS 26+ with vertical tabs, Spaces, Favorites and split view.
Feather is a native macOS browser written in Swift and SwiftUI on the system WebKit engine, by solo developer Nassim (Nesbesss). It has an Arc-style sidebar with Favorites shared by every Space, per-space pinned tabs and separate cookies per Space. It adds a command bar, two-pane split view, Shift-click link preview, auto picture-in-picture and a built-in ad blocker. On Macs with Apple Intelligence, an on-device model groups loose tabs. It needs macOS 26 or later and is an unnotarized 0.1.0 preview that uses private WebKit APIs.
50% Arc feature parity (yes = 1, partial = ½).
AI on by default
On-device Apple Intelligence groups loose tabs and decides when to hide the sidebar; both on by default, toggles in Settings. Inert without Apple Intelligence.
github.comNot counted in Arc parity: some people want AI, some avoid it.
None found
No analytics, account, ad or upsell code in the source. Network use: favicons, extension updates and a YouTube SponsorBlock lookup (on by default, toggle).
github.comAds, crypto, paid upsells, news feeds, default-on telemetry, required accounts.
Organization
| Feature | Feather | Arc | Note |
|---|---|---|---|
| Vertical sidebarTabs live in a vertical sidebar that is the main tab UI and can be hidden. | ✓ | ✓ | Sidebar is the only tab UI (no toolbar); ⌘S hides it, and it can auto-hide on sites with their own sidebar.github.com |
| SpacesSeveral workspaces per window, each with its own pinned and open tabs, switched by swipe or shortcut. | ✓ | ✓ | Each Space has its own pinned and regular tabs and archive; ⌃1–9 switches.github.com |
| Profiles per Space (shareable)Each Space can use its own browser profile (separate cookies, logins, history), and one profile can be shared by several Spaces. | ◐ | ✓ | Every Space after the first gets its own cookie store; no profile picker, so none can be shared across Spaces.github.com |
| Global favoritesPinned icons at the top of the sidebar shared by every Space (Zen calls them Essentials). | ✓ | ✓ | Favorites tiles at the top of the sidebar are shared by every Space; each Space opens its own tab for one.github.com |
| Pinned tabs & foldersPer-space pinned tabs that act like bookmarks, with nested folders. | ◐ | ✓ | Per-Space pinned tabs; no folders for them. Named groups exist only for unpinned tabs.github.com |
| Auto-archive tabsUnpinned tabs close automatically after a set time and stay recoverable in an archive. | ✓ | ✓ | Unpinned tabs archive after 12 h (default), 1 day, 1 week or never; the command bar finds them.github.com |
| Space themesPer-space colour or gradient themes. | ◐ | ✓ | Each Space gets a tint hue that colours its window and sidebar; assigned automatically, no picker found.github.com |
Browsing
| Feature | Feather | Arc | Note |
|---|---|---|---|
| Split ViewTwo or more tabs side by side in one window. | ◐ | ✓ | Two panes side by side only (primary and secondary tab); ⇧⌘= toggles.github.com |
| Link previewOpen a link in an overlay without leaving the current page (Zen calls it Glance). | ✓ | ✓ | ⇧-click a link to preview it in a floating panel; ⌘↩ opens it as a tab.github.com |
| Mini windowA small, chrome-less window for links opened from other apps or a quick search. | ✕ | ✓ | Links from other apps open as a normal tab in the current window; small windows only for sign-in popups.github.com |
| Command barA ⌘T palette that searches tabs, history, bookmarks and browser commands. | ◐ | ✓ | ⌘T/⌘L palette searches open tabs, archive, history and Favorites; no browser commands.github.com |
| Link routingRules that send links from other apps to a chosen space or profile. | ✕ | ✓ | External links all open in the key window; no routing rules or per-Space default found.github.com |
| Site customizationPer-site custom CSS/JS, or zapping elements off a page. | ◐ | ✓ | No per-site CSS/JS editor or zap; content scripts and styles only via installed WebExtensions.github.com |
| Auto picture-in-picturePlaying video pops out into picture-in-picture automatically when you switch tabs. | ✓ | ✓ | Switching away from a playing video pops it into PiP; on by default and a Settings toggle.github.com |
Compatibility & migration
| Feature | Feather | Arc | Note |
|---|---|---|---|
| Arc importImports Arc spaces, pinned tabs and folders. | ✕ | – | No Arc importer found; only a password CSV import (Passwords app, Safari, Chrome, Firefox, Bitwarden).github.com |
| Chrome extensionsInstalls extensions from the Chrome Web Store. | ◐ | ✓ | Installs from Web Store links, CRX/ZIP or folders on WebKit's runtime; Chrome-only APIs are unavailable.github.com |
| DRM (Widevine)Netflix, Disney+, Spotify web and other DRM video/audio play. Chromium forks need a Google Widevine licence. | ? | ✓ | |
| PasskeysWebAuthn passkeys, Touch ID and the system/iCloud keychain. | ✕ | ✓ | 0.1.0 is ad-hoc signed without Apple's passkey entitlement; pages see no WebAuthn. Passwords use Touch ID.github.com |
| SyncSpaces, pinned tabs and settings sync across devices. | ✕ | ✓ | No sync or account code in the source; spaces and settings stay on the Mac.github.com |
| Mobile appiPhone, iPad or Android app that shares spaces with desktop. | ✕ | ◐ | macOS-only Xcode project (macOS 26.0 target); no iOS or Android app.github.com |
Extras
| Feature | Feather | Arc | Note |
|---|---|---|---|
| Built-in ad blockerAd and tracker blocking without installing an extension. | ✓ | ✓ | Bundled HaGeZi domain list as WebKit content rules, on by default; plus cookie pop-up rejection.github.com |
Extension support
Which extension formats and stores run, beyond the Chrome Web Store row above. Not counted in Arc parity.
| Feature | Feather | Arc | Note |
|---|---|---|---|
| Manifest V2 extensionsThe older extension format Chrome removed in 2025. Needed for full uBlock Origin and other extensions that block requests. | ◐ | ✕ | WebKit loads MV2 but ignores blocking webRequest, so uBlock Origin can't block. No Feather patch.github.com |
| Manifest V3 extensionsThe current extension format used by the Chrome Web Store (and supported by Firefox and Safari). | ✓ | ✓ | Runs MV3 on WebKit's native extension runtime; Chrome-only APIs are unavailable.github.com |
| Firefox add-onsAdd-ons from addons.mozilla.org or .xpi files install and run. | ◐ | ✕ | Manual import only: any ZIP-format file (so a .xpi) is accepted; no addons.mozilla.org install flow.github.com |
| Safari extensionsSafari web extensions (the App Store extension apps Safari uses) install and run. | ◐ | ✕ | Can't install App Store Safari extension apps; only unpacked extension folders or ZIPs load.github.com |