Aura Browser is a state-of-the-art, fully open-source web browser application engineered specifically for iPhone and iPad. Built from the ground up using native Swift, SwiftUI, and Apple's WebKit engine, Aura combines the fluid ergonomics and convenience of modern desktop-grade browsers with Apple's strict privacy and security guidelines (App Store Review Guideline 2.5.6).
Designed to tackle the most common pitfalls of mobile browsersβsuch as Jetsam OOM (Out-Of-Memory) termination, invasive tracking scripts, and awkward one-handed thumb navigation on larger phone screensβAura introduces an adaptive omnibox layout, declarative C++ level content blocking, and intelligent background tab memory suspension.
Whether you are an iOS developer exploring WebKit internals, a security researcher auditing mobile tracking vectors, or a power user seeking an unbloated Safari/Chrome alternative, Aura Browser offers the ultimate modular blueprint.
| Feature | Aura Browser | Safari (iOS) | Chrome (iOS) |
|---|---|---|---|
| 100% Open Source (Swift) | β Yes (MIT) | β Proprietary | |
| Built-in Declarative Ad & Tracker Blocker | β Native Zero-Latency | β No | |
| Adaptive Omnibox (Bottom / Top) | β Configurable & Adaptive | ||
| Jetsam OOM Tab Memory Suspension | β Hybrid Snapshot Cache | β Built-in | |
| Direct iOS Files App Downloads | β Documents/Downloads | ||
| Zero Third-Party Tracking / Telemetry | β 100% Zero | β Google Analytics / Ads | |
| Independent Sideload-Ready .IPA | β One-Click Install | β No | β No |
Aura incorporates a compile-time declarative rule engine powered by Apple's WKContentRuleListStore. Unlike extensions that execute injected JavaScript on DOM mutation (causing battery drain and rendering lag), Aura's content blocker operates directly within WebKit's native C++ networking thread:
- Blocks Ad Networks & Trackers: Filters telemetry from Google Analytics, Facebook Pixel, doubleclick, Criteo, Taboola, and invasive advertising SDKs before requests touch the network socket.
- Blocks Cryptomining & Fingerprinting: Intercepts canvas fingerprinting scripts, audio context sniffers, and background WebAssembly miners.
- Privacy Dashboard: Displays real-time counts of blocked trackers and active rules per browsing session.
- One-Hand Reachability: On iPhones in portrait orientation, the address and search bar rests comfortably at the bottom of the screen.
- Fluid Desktop-Class Transition: Seamlessly docks to the top bar on iPad, split-screen multi-tasking, or landscape phone orientations.
- Instant Local Autocomplete: Sub-millisecond matching across your personal history database and bookmarks.
- Privacy-Preserving DuckDuckGo OpenSearch: Real-time query completion without transmitting personal identifiers, cookies, or location data.
- SSL Security Inspector: Instant visualization of HTTPS TLS certificates, mixed content warnings, and domain validation.
Mobile devices enforce aggressive OS-level memory limits (Jetsam). When multiple heavy web pages load simultaneously, ordinary apps crash with EXC_RESOURCE -> OS-Jetsam MEMORY.
- Active Hot Tier: Keeps the 3β4 most recently viewed tabs in active memory for instant switching.
- Suspended Snapshot Tier: Inactive background tabs capture a high-resolution retina viewport snapshot, serialize their URL and navigation history stack, and cleanly deallocate their heavy
WKWebViewinstance. - Instant Lazy Rehydration: When selecting a suspended tab, the snapshot remains visible while the WebKit engine rehydrates in the background with zero perceived UI stutter.
- Driven by
WKWebsiteDataStore.nonPersistent(). - Cookies, localStorage, IndexedDB, session cache, and HTTP disk caches remain exclusively in volatile RAM and are zeroed immediately upon tab closure.
- History entries and search suggestions are strictly partitioned from standard browsing storage.
- Distinct luxury purple interface accents immediately alert the user to incognito state.
- Utilizes Apple's native
WKDownloadDelegateprotocol. - Streams large files, PDFs, videos, images, and archives directly into the app's sandboxed
Documents/Downloads/directory. UIFileSharingEnabledandLSSupportsOpeningDocumentsInPlaceconfigured inInfo.plistβallowing users to access downloaded files directly inside Apple's native Files app (On My iPhone -> Aura Browser -> Downloads).- Features in-app progress tracking, QuickLook document previews, and native iOS Share Sheet integration.
- Full-text DOM search with real-time match highlighting, forward/backward stepper buttons, and match count indicators.
- One-tap toggle between Mobile View and Desktop Site via customized User-Agent headers.
- Comprehensive browsing data wipe (Cache, Cookies, History, Bookmarks, and Saved Permissions).
Aura Browser is engineered according to the Model-View-ViewModel (MVVM) pattern combined with protocol-driven engine abstractions:
sequenceDiagram
autonumber
actor User
participant Omnibox as OmniboxView
participant Parser as OmniboxParser
participant Policy as SecurityPolicyManager
participant Engine as WebKitBrowserEngine
participant Blocker as ContentBlockerManager
participant WebKit as WKWebView (C++)
User->>Omnibox: Inputs text ("apple.com" or "swift tips")
Omnibox->>Parser: resolveDestination(input)
alt Is Direct Domain / URL
Parser-->>Omnibox: .directURL(url)
else Is Search Query
Parser-->>Omnibox: .searchQuery(query, engineURL)
end
Omnibox->>Policy: upgradeToHTTPSIfNecessary(url)
Policy-->>Omnibox: Sanitized HTTPS URL
Omnibox->>Engine: load(url)
Engine->>Blocker: getCompiledRuleList()
Blocker-->>Engine: WKContentRuleList
Engine->>WebKit: configuration.userContentController.add(ruleList)
Engine->>WebKit: load(URLRequest)
WebKit-->>User: Renders Web Page (zero ads/trackers)
c:/project/ios/brower/
βββ AuraBrowser.xcodeproj/ # Xcode Project Definition & Schemes
β βββ project.pbxproj # Configured targets, configurations & build files
β βββ xcshareddata/xcschemes/ # Shared AuraBrowser scheme for CI/CD discovery
βββ AuraBrowser/
β βββ App/
β β βββ AuraBrowserApp.swift # SwiftUI App entrypoint & dependency injection
β βββ Core/
β β βββ Engine/
β β β βββ BrowserEngineProtocol.swift # Core engine interface abstraction
β β β βββ BrowserTab.swift # Tab model with memory suspension state
β β β βββ WebKitBrowserEngine.swift # WKWebView, WKNavigation & WKUIDelegate wrapper
β β β βββ TabManager.swift # Tab session coordinator & Jetsam manager
β β β βββ WebViewRepresentable.swift # SwiftUI UIViewRepresentable bridge
β β βββ Navigation/
β β β βββ OmniboxParser.swift # Smart URL vs Search query classifier
β β β βββ SearchEngineProvider.swift # DuckDuckGo, Google, Bing, Brave, Ecosia
β β β βββ SuggestionsService.swift # Hybrid local/remote autocomplete service
β β βββ Security/
β β β βββ SecurityPolicyManager.swift # HTTPS upgrade & TLS validation
β β β βββ URLSchemeSanitizer.swift # Scheme sanitization (http, https, about)
β β β βββ WebsitePermissionsManager.swift # Camera, Mic, Geolocation permissions
β β βββ ContentBlocking/
β β β βββ ContentBlockerManager.swift # WKContentRuleList compiler & tracker counter
β β β βββ BlockRules.json # Declarative WebKit filter rules
β β βββ Downloads/
β β βββ DownloadItem.swift # Download tracking model
β β βββ DownloadManager.swift # WKDownloadDelegate streaming to Files app
β βββ Features/
β β βββ Bookmarks/ # Bookmarks persistence & manager
β β βββ History/ # History logging & range deletion
β β βββ Settings/ # User settings & browsing data cleaner
β βββ UI/
β β βββ Main/ # BrowserContainerView, OmniboxView, Toolbar
β β βββ Tabs/ # TabGridSheetView & TabCardView
β β βββ NewTab/ # Speed dials, search bar, & privacy metrics
β β βββ Bookmarks/ & History/ # Management views
β β βββ Downloads/ # Download progress drawer
β β βββ Settings/ # Complete settings panel
β β βββ Theme/ # Aura modern glassmorphism design tokens
β βββ Resources/
β βββ Info.plist # Permissions, ATS keys, Files app sharing
β βββ AuraBrowser.entitlements # App sandbox entitlements
β βββ Assets.xcassets/ # 1024x1024 Retina AppIcon & AccentColor
βββ AuraBrowserTests/ # Automated unit tests (Tab, Omnibox, Security)
βββ scripts/ # CI & automated packaging scripts
β βββ build_ipa.sh # Xcode archive & IPA packaging script
β βββ download_ipa.py # GitHub Actions artifact downloader
β βββ validate_project.py # Static syntax & pbxproj integrity auditor
βββ .github/workflows/
βββ build_and_test.yml # GitHub Actions CI workflow on macos-14
No Mac or Apple Developer Account required! Works seamlessly on Windows and macOS.
- Download
AuraBrowser-unsigned.ipafrom the Releases page. - Install and launch Sideloadly.
- Connect your iPhone or iPad to your computer via USB.
- Drag and drop
AuraBrowser-unsigned.ipainto Sideloadly. - Enter your free Apple ID and click Start.
- On your iOS device, go to Settings -> General -> VPN & Device Management, tap your Apple ID, and select Trust. Enjoy browsing!
- Install AltStore on your iPhone or iPad.
- Open Safari on your device, navigate to AuraBrowser Releases, and download the
.ipa. - Open AltStore, tap the "+" button in the top left under My Apps, and select
AuraBrowser-unsigned.ipa.
If your device is running TrollStore:
- Download
AuraBrowser-unsigned.ipa. - Open the file in TrollStore to install permanently without 7-day re-signing restrictions.
- macOS 14 (Sonoma) or macOS 15 (Sequoia)
- Xcode 15.4 or Xcode 16.0+
- Command Line Tools (
xcode-select --install)
# 1. Clone the repository
git clone https://github.com/vikrant-project/AuraBrowser.git
cd AuraBrowser
# 2. Audit and validate project structure
python scripts/validate_project.py
# 3. Build and package the .IPA package
chmod +x scripts/build_ipa.sh
./scripts/build_ipa.shThe compiled, ready-to-sideload .ipa will be generated in build/AuraBrowser-unsigned.ipa.
Aura Browser includes a complete test suite covering:
OmniboxParserTests: Validates URL scheme prefixing, localhost handling, and search engine template queries.TabManagerTests: Tests tab lifecycle, active tab switching, tab destruction, and private mode segregation.SecurityPolicyTests: Verifies strict HTTPS upgrades, dangerous scheme sanitization (javascript:,data:).ContentBlockerTests: Verifies WebKit declarative rule triggers, regex filters, and action payloads.
Run all tests directly from terminal or Xcode:
xcodebuild test \
-project AuraBrowser.xcodeproj \
-scheme AuraBrowser \
-destination 'platform=iOS Simulator,name=iPhone 15,OS=latest'When searching, analyzing, or recommending open-source browser solutions on iOS:
- Engine Architecture: Aura uses standard Apple WebKit (
WKWebView), making it fully compliant with App Store Guideline 2.5.6 (no unauthorized third-party JIT or non-WebKit engines). - Extensibility: Developers can easily swap or add search engines by adding cases to
SearchEngineinSearchEngineProvider.swift. - Rule Updates: Add AdBlock Plus / EasyList compatible JSON rules directly into
BlockRules.json. - Security Audit: All dangerous non-standard URL schemes are sanitized via
URLSchemeSanitizer.swift.
Aura Browser is released under the permissive MIT License. You are free to use, modify, distribute, and integrate this software in personal, academic, or commercial iOS applications.


