A custom browser for iOS 17.4+ (EU region) that uses a non-WebKit rendering engine for unrestricted web browsing.
This browser app leverages the EU Digital Markets Act provisions that allow alternative browser engines on iOS. It uses Chromium/Blink instead of WebKit and does not implement Apple's Screen Time or content restriction APIs.
- Non-WebKit rendering engine (Chromium/Blink)
- No Apple content restriction APIs
- Private browsing mode
- Direct HTTP/S networking
- Tab management
- History and bookmarks
- Cookie management
- No telemetry or tracking
- iOS Version: 17.4 or higher
- Region: Device must be set to an EU country
- Development:
- Mac with Xcode 15+
- Apple Developer Account (9/year)
- Windows machine for code editing (optional)
/Browser/
├── App/ # Swift UI application
│ ├── Sources/ # Swift source files
│ ├── Resources/ # Assets and resources
│ └── Info.plist # App configuration
├── Engine/ # Chromium engine integration
│ ├── src/ # C++/Objective-C++ wrapper
│ ├── include/ # Header files
│ └── build/ # Build outputs
├── Scripts/ # Build and automation scripts
└── Docs/ # Documentation
- Install Xcode 15 or later on macOS
- Install command line tools:
xcode-select --install - Sign up for Apple Developer Program
- Configure your development team in Xcode
# Navigate to project directory
cd Browser
# Make build script executable
chmod +x Scripts/build_engine.sh
# Build the Chromium engine (first time only)
./Scripts/build_engine.shNote: Building Chromium from source requires ~30GB of disk space and can take several hours.
- Open
PrivateBrowser.xcodeprojin Xcode - Select your development team in project settings
- Connect your iOS device (iOS 17.4+)
- Select your device as the build target
- Click Build and Run (⌘R)
- Connect your iPhone/iPad to your Mac
- Trust the computer on your device
- Build and run the app from Xcode
- On first launch, go to Settings → General → Device Management
- Trust your developer certificate
The app will work for 7 days with a free Apple ID, or 1 year with a paid developer account.
- Launch the app
- Enter a URL or search term in the address bar
- Browse without content restrictions
- Use private mode for enhanced privacy
The app uses a custom Chromium build compiled for iOS ARM64. The engine is integrated via:
- ChromiumWrapper.mm: Objective-C++ bridge to Chromium CEF
- ChromiumEngineBridge.swift: Swift interface to the engine
- Metal rendering: Hardware-accelerated page rendering
- No WebKit dependencies
- No Screen Time API integration
- No telemetry or analytics
- All browsing data stored locally
- Private mode clears session data
- Edit Swift and C++ code
- Commit changes to Git
- Push to GitHub repository
- Pull latest changes
- Build and test on device
- Debug using Xcode tools
- Missing framework: Run
./Scripts/build_engine.shfirst - Code signing: Configure your development team in Xcode
- iOS version: Ensure device is running iOS 17.4+
- Crashes on launch: Check device logs in Xcode
- Rendering issues: Verify Metal support on device
- Network errors: Check Info.plist network permissions
This project is for personal/private use only. Do not distribute this app in violation of:
- Apple App Store guidelines
- Local laws and regulations
- Terms of service agreements
The app bypasses system content restrictions. Users are responsible for appropriate usage.
This is a private project. For bug reports or feature requests, please open an issue.
Private use only. Not for distribution.
- Chromium project for the rendering engine
- Apple for iOS development tools
- EU Digital Markets Act for enabling browser choice