MacOS application for advanced L2TP VPN split tunneling
Features
- Automatically detects available L2TP VPN connections on your Mac
- Network and host management
- Sync routing configuration with active VPN connections
- Reset routing rules when needed
- Export/Import network host configurations as JSON for easy backup and sharing
- Built-in update checker with GitHub integration
- Clean UI with responsive design
Quickstart
-
Configure your VPN and disable "Send all traffic over VPN"
-
Install Splitr using one of the methods from the Installation section
-
Launch Splitr from Applications and add your network hosts or IP ranges
-
Connect your VPN and Splitr will automatically manage the routing rules
-
Use the Sync button: If routing is not applied correctly, click the "Sync" button in Splitr to refresh the routing configuration
-
Reconnect VPN if needed: If routing issues persist, disconnect and reconnect your VPN connection to ensure proper route establishment
That's it! Your specified hosts will now route through the VPN while other traffic uses your regular connection.
Installation
Homebrew (Recommended)
The easiest way to install Splitr is using Homebrew:
Currently (using custom tap):
# One-liner installation
brew install --cask dmitrorlov/tap/splitr
# Or step by step
brew tap dmitrorlov/tap
brew install --cask splitr
Benefits of Homebrew installation:
- ✅ Automatic quarantine attribute removal (no manual
xattr commands needed)
- ✅ Easy updates with
brew upgrade splitr
- ✅ Proper installation to
/Applications
- ✅ Clean uninstallation with
brew uninstall --cask splitr
Manual Installation
If you prefer not to use Homebrew:
- Download the latest release from GitHub Releases
- Extract the ZIP file
- Move
Splitr.app to your /Applications folder
- Remove quarantine attributes:
xattr -cr /Applications/Splitr.app
Updating
Homebrew Users
brew upgrade splitr
If you got warning that latest version is already installed, run this before:
brew update
Manual Installation Users
- Download the new version
- Replace the old app in
/Applications
- Run the
xattr command again
The app also includes a built-in update checker accessible from the menu: Splitr → Check for Updates...
Development
This project is built with:
- Wails v2 - Go + Web frontend framework
- Go 1.25+ backend
- TypeScript frontend
- SQLite database
Building from Source
-
Install Task if you don't have it. Check Task's installation instructions.
-
Install dependencies:
task setup
-
Run in development mode:
task dev
-
Build for production:
task build
Support
License
This project is licensed under the MIT License - see the LICENSE file for details.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Made with ❤️ using Wails