ardia README

The project's README from github.com/mantrakp04/ardia. As one markdown file: README.md.

Ardia's app icon

Touch grass.

Arc’s sidebar and Dia’s polish on real Chromium.
Free and open source. Ads and trackers stay out.

Download Ardia 0.2.39 for Mac

109 MB DMG · macOS 14 Sonoma or later · Apple Silicon · Notarized by Apple
Like your paint wet? The nightly has every fix the day it’s made, smudges and all.
ardia.dev · What’s new · All releases · Discord

The Ardia window in light mode: pinned tiles and tabs in the sidebar, and Wikipedia’s article on The Hay Wain open on the right.

Lose the toolbar.

Move the address bar into the sidebar and the page runs all the way to the top of the window.

Ardia with the address bar in the sidebar under the traffic lights and Wikipedia running to the top of the window.

Two pages, one window.

Drag a tab onto the page. Up to three panes, side by side or stacked.

Ardia in split view: MDN on the left, Wikipedia on the right, both in one window.

Refuses to leave the picture.

Switch tabs mid-video and it floats along in the corner. Go back to its tab and it slips back into the page.

Ardia on Wikipedia’s article about Big Buck Bunny, while the film keeps playing in a small floating window at the bottom right.

Your extensions come along.

The Chrome Web Store just works, its button says Add to Ardia, and Sync takes them to your other Macs.

Dark Reader’s page on the Chrome Web Store, open in Ardia, with an Add to Ardia button.

Ads and trackers stay out.

The full uBlock Origin is built in, cookie banners included. Google’s pings are compiled out. Crash reports are opt-in and never carry your sites or searches.

Also in there

It’s actually Chromium.

Not WebKit. Not Electron. Every window is Chrome’s own, so sites, extensions and DevTools behave like they do in Chrome.

Part Details Status
Engine Chromium 155, on Chrome’s own framework. ✓ Yes
De-Googled Google’s background services stripped out. ✓ Yes
H.264 and AAC The codecs Chromium leaves out. ✓ Yes
DevTools Docked, with device mode. Like Chrome. ✓ Yes
Sync End-to-end encrypted, through your own iCloud Drive. ✓ Yes
Translate On your Mac. Nothing leaves it. ✓ macOS 26
Passkeys Touch ID yes. iCloud Keychain waits on Apple. ~ Partly
Widevine Google hasn’t signed off. So no Netflix. ✗ Not yet
Intel Macs Apple Silicon only. ✗ No

Download Ardia 0.2.39

It’s 109 MB and one drag into Applications.
Not on a Mac? Watch › Custom › Releases up top and GitHub tells you when it is.


Build it yourself

A macOS browser that looks and feels like Dia: Chrome's own framework from our patched Chromium with our layer on top (ArdiaCore), an Expo + React Native macOS shell, and Metal shaders reconstructed from Dia's own New Tab effects.

apps/
  browser/            Expo + react-native-macos app (UI in src/, Xcode project in macos/)
packages/
  ardiacore/             The engine: Chromium 155's framework with our layer (Chrome tabs hosted in our views), JS API in src/
  shell/              Native menu bar + shortcuts → JS, windows, SF Symbols, native primitives
  shaders/            Metal: New Tab effects + grained OKLab window backdrop
  import/             Import from other browsers (bookmarks, history, passwords, Arc spaces)
  core/               Pure TS: omnibox input → URL, suggestions, Dia-style breadcrumbs (tested)

Run it

Requires Xcode 26+, CocoaPods, Node 22.13+ (pinned in .nvmrc), pnpm 11.

pnpm install

The engine (Chrome's framework, built from our patched Chromium) comes prebuilt: with no local engine build, the app's build downloads the one matching your checkout's engine/ (about 110 MB, once; Apple Silicon only) and checks it against packages/ardiacore/prebuilt-engines.tsv. Every release whose engine changed publishes one. If main's engine is newer than the last release's, work from a release tag (v0.2.30, say), or run packages/ardiacore/scripts/fetch-engine.sh --nearest to build against the newest prebuilt anyway. Passkeys and saved cards need our team ID and won't work in a build signed by anyone else.

To change the engine itself (anything under engine/), build it from source: Chrome's framework from our patched Chromium tree in ~/chromium-build (Chromium 155.0.8059.84 with the patch series in engine/patches; docs/engine-build.md › "Rebuilding", then engine/chromium/apply.sh, engine/ardiacore/apply.sh and autoninja -C out/Release_GN_arm64 chrome_framework; the first build takes about 2 hours). The app's build stages it from there when it exists.

pnpm pods

In one terminal, start Metro:

pnpm dev

In another, build and launch the Debug app (on its own data, ~/Library/Application Support/Ardia Dev, or ARDIA_DATA_DIR):

pnpm macos

Other tasks: pnpm typecheck, pnpm test, pnpm shaders:check (compiles the embedded Metal offline), pnpm build (Release .app with a Hermes bytecode bundle in apps/browser/build/). Signed releases (DMG, Sparkle zip and appcast): scripts/release.sh <version>, see docs/releasing.md.

Shortcuts: ⌘T new tab, ⌘L command bar, ⌘W close, ⇧⌘T reopen, ⌘S sidebar, ⌘[ / ⌘] back/forward, ⌘R reload, ⌘1–⌘9 select tab, ⌃Tab cycle.

How Dia's New Tab light works

Dia 1.50 turns this light off along with its rebrand (a painted mark, a single-colour power-up band and a halo around the bar; docs/dia-spec.md › "1.50 Sunglow"), and so does Ardia. The reconstruction left the tree with it: git show f2c0e251:packages/shaders/ios/AreaLightView.swift.

These findings come from disassembling the Metal libraries in Dia.app (v1.49.1) with xcrun metal-objdump. BoostBrowser_PowerUp.bundle/default.metallib contains breathingAreaLightFragment, which the Swift class NewTabPage.NewTabAreaLightView hosts. The reconstruction was AreaLightView.swift (above).

The window backdrop comes from ARC_WindowThemeUI.bundle (gradientFragment + renderFragment). Gradient stops are stored and mixed in OKLab, then converted to linear sRGB and gamma-encoded in the shader. A tiled grain texture is then multiply-blended on top. WindowBackdropView does the same with procedural grain.

Only math and colour values are reused. No Dia images, fonts or binaries are copied into this repo.

Architecture notes

Status

Feature parity with Dia (everything but its AI) is tracked row by row in docs/dia-feature-parity.md; releases and their notes are at ardia.dev/release-notes.

License

Ardia as distributed is licensed under the GNU General Public License v3, because its engine is built with GPL-3.0 patches. Ardia's own source files are under the Apache License 2.0. It builds on Chromium, carries a few of the Chromium Embedded Framework's patches to Chromium (BSD-3-Clause), and bundles uBlock Origin, each under its own license; see NOTICE. Every release links its source.

ardia (mantrakp04/ardia)

degoogled
Searching Database…

821 ·GitHub
What is this?Ardia is a free, open-source Chromium-based browser for Mac that combines Arc's sidebar layout with Dia's visual polish, built without ads, trackers or Google telemetry.
Is this Electron or a real Chromium build?It's a native Chromium browser, not an Electron wrapper - every window runs on Chrome's own framework (built from a patched Chromium tree called ArdiaCore), wrapped in an Expo + React Native macOS shell for the UI.
Does it run on Intel Macs?No - Ardia requires Apple Silicon and macOS 14 Sonoma or later; there's no Intel build.
Does it block ads and trackers by default?Yes - a full copy of uBlock Origin is built in including cookie-banner blocking, Google's background telemetry pings are compiled out of the app, and crash reports are opt-in and never carry your sites or searches.
Can I use my Chrome extensions?Yes - the Chrome Web Store works directly in Ardia, its install button even reads 'Add to Ardia', and installed extensions sync across your Macs.
Will Netflix work in Ardia?Not yet - Google hasn't approved Widevine DRM for Ardia, so Netflix and other DRM-protected streaming services won't play.
How does syncing across my Macs work?Sync goes through your own iCloud Drive and is end-to-end encrypted, with no Ardia server involved.
What happens to tabs I'm not using?Background tabs beyond your five most recent freeze automatically, and any tab sleeps after about 30 minutes idle, keeping CPU use under half a percent with a tab open.
Creator
mantrakp04
Size
110.5 MB
Stars
821
Age
4mo
Commits · 90 Days