splitr

command module
v0.1.26 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 6, 2025 License: MIT Imports: 19 Imported by: 0

README

Splitr

MacOS application for advanced L2TP VPN split tunneling

Github release Go report card

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

Send all traffic over VPN

  1. Configure your VPN and disable "Send all traffic over VPN"

  2. Install Splitr using one of the methods from the Installation section

  3. Launch Splitr from Applications and add your network hosts or IP ranges

  4. Connect your VPN and Splitr will automatically manage the routing rules

  5. Use the Sync button: If routing is not applied correctly, click the "Sync" button in Splitr to refresh the routing configuration

  6. 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

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:

  1. Download the latest release from GitHub Releases
  2. Extract the ZIP file
  3. Move Splitr.app to your /Applications folder
  4. 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

  1. Download the new version
  2. Replace the old app in /Applications
  3. 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

  1. Install Task if you don't have it. Check Task's installation instructions.

  2. Install dependencies:

    task setup
    
  3. Run in development mode:

    task dev
    
  4. 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

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
backend
app
mocks/storage
Package mock_storage is a generated GoMock package.
Package mock_storage is a generated GoMock package.
mocks/trm
Package mock_trm is a generated GoMock package.
Package mock_trm is a generated GoMock package.
mocks/usecase
Package mock_usecase is a generated GoMock package.
Package mock_usecase is a generated GoMock package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL