Skip to content

Getting Started

Requirements

  • Python 3.11+
  • uv (recommended) or pip

Installation

From PyPI

pip install pypproxy

With Frida support

pip install 'pypproxy[frida]'

From source

git clone https://github.com/ykus4/pypproxy
cd pypproxy
uv sync

Running

GUI mode (default)

pypproxy

Open http://localhost:8081 in your browser.

CUI mode

pypproxy --mode cui

Startup output

pypproxy MITM proxy
  proxy : 0.0.0.0:8080
  UI    : http://0.0.0.0:8081
  CA    : /Users/you/.paxy/ca-cert.pem
  DB    : /Users/you/.paxy/pypproxy.db

On first run, ~/.paxy/ca-cert.pem and ~/.paxy/ca-key.pem are generated automatically.

Install the CA certificate

macOS (system-wide)

sudo security add-trusted-cert -d -r trustRoot \
  -k /Library/Keychains/System.keychain ~/.paxy/ca-cert.pem

Firefox

  1. SettingsPrivacy & SecurityView CertificatesAuthorities
  2. Import → select ~/.paxy/ca-cert.pem
  3. Check Trust this CA to identify websites

Android

  1. Transfer ca-cert.pem to the device
  2. SettingsSecurityInstall from storage

iOS

  1. Send the certificate via email or AirDrop
  2. Open it — iOS prompts to install a profile
  3. SettingsGeneralVPN & Device Management → install
  4. SettingsGeneralAboutCertificate Trust Settings → enable full trust

Configure the proxy

macOS

networksetup -setwebproxy Wi-Fi 127.0.0.1 8080
networksetup -setsecurewebproxy Wi-Fi 127.0.0.1 8080

# To disable:
networksetup -setwebproxystate Wi-Fi off
networksetup -setsecurewebproxystate Wi-Fi off

Android / iOS

SettingsWi-Fi → your network → Proxy: Manual

  • Host: your machine's IP (e.g. 192.168.1.10)
  • Port: 8080

Open the UI

Navigate to http://localhost:8081. Switch between dark and light mode using the ☀ button in the toolbar.