# jamesmcm/vopono

Run applications through VPN tunnels with temporary network namespaces

Repository: https://github.com/jamesmcm/vopono
Canonical: https://ross.abutalabs.com/products/vopono
Language: Rust
License: GPL-3.0
License Family: copyleft
Topics: wireguard, openvpn, mullvad, hacktoberfest, rust, rust-lang
Last push: 2026-08-26T17:27:31+00:00

## Health v2 (maintenance only)
Score: 95/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 99, release rhythm 87, longevity 100
- inputs: {"age_days": 2292, "days_push": 7, "days_rel": 10, "gap_med": 38.5, "n_releases_24m": 11}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1303, forks 76 (observed 2026-08-28T04:04:18.144735+00:00)

## What it is
Vopono is a Rust CLI tool that runs individual applications through VPN tunnels using temporary network namespaces on Linux. It supports multiple VPN providers (Mullvad, ProtonVPN, NordVPN, etc.) simultaneously with built-in killswitches for Wireguard and OpenVPN.

## Use cases
- run firefox through a VPN while keeping other traffic normal
- route different apps through different VPNs simultaneously
- per-application VPN split tunneling on linux
- run a torrent client through VPN with a killswitch
- use multiple VPN providers at the same time
- forward ports through a VPN for seeding
- connect to an enterprise VPN with OpenConnect for one app only

## When to choose
- you use Linux and want per-application VPN routing without a full system VPN
- you need to run several apps through different VPN providers concurrently
- you want a killswitch that prevents traffic leaks if the VPN drops
- you need VPN port forwarding with callback hooks

## When to avoid
- you are on Windows or macOS, since vopono relies on Linux network namespaces
- you want a GUI VPN client
- you need to route your entire system through a VPN rather than specific applications
- you use a VPN provider not supported and without a usable OpenVPN/Wireguard config file

## Facets
- artifact type: cli-tool
- maturity: active
- function: vpn, networking, security, privacy, cli
- domain: privacy, security, networking, developer-tools
- platform: rust, cli
- tags: wireguard, openvpn, network-namespaces, killswitch, mullvad, protonvpn, split-tunneling, command-line, linux

## Member repositories
- jamesmcm/vopono (main) score 95

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:18.144735+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:51:12.121698+00:00, confidence not recorded.
  - readme: https://github.com/jamesmcm/vopono (fetched 2026-08-28T04:04:18.144735+00:00, sha 2cb973b4d937)
  - registry_crates: https://crates.io/api/v1/crates/vopono (fetched 2026-08-29T12:09:14.701062+00:00, sha 64e8667186b7)
- Data as of 2026-08-30T08:39:29.467469+00:00.
