{"id":13596735,"url":"https://github.com/mitmproxy/mitmproxy_rs","last_synced_at":"2025-06-12T03:42:54.798Z","repository":{"id":64805865,"uuid":"578372774","full_name":"mitmproxy/mitmproxy_rs","owner":"mitmproxy","description":"The Rust bits in mitmproxy. 🦀","archived":false,"fork":false,"pushed_at":"2025-03-31T14:51:24.000Z","size":11685,"stargazers_count":251,"open_issues_count":4,"forks_count":34,"subscribers_count":14,"default_branch":"main","last_synced_at":"2025-03-31T16:05:45.132Z","etag":null,"topics":["mitmproxy"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mitmproxy.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"mhils"}},"created_at":"2022-12-14T22:41:22.000Z","updated_at":"2025-03-31T14:51:28.000Z","dependencies_parsed_at":"2023-07-26T09:13:25.681Z","dependency_job_id":"b891c708-5d4a-496c-838b-275da520b698","html_url":"https://github.com/mitmproxy/mitmproxy_rs","commit_stats":null,"previous_names":["mitmproxy/mitmproxy-rs"],"tags_count":59,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mitmproxy%2Fmitmproxy_rs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mitmproxy%2Fmitmproxy_rs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mitmproxy%2Fmitmproxy_rs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mitmproxy%2Fmitmproxy_rs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mitmproxy","download_url":"https://codeload.github.com/mitmproxy/mitmproxy_rs/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248107320,"owners_count":21048900,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["mitmproxy"],"created_at":"2024-08-01T16:02:44.063Z","updated_at":"2025-06-12T03:42:54.789Z","avatar_url":"https://github.com/mitmproxy.png","language":"Rust","readme":"# mitmproxy_rs\n\n[![autofix.ci: enabled](https://shields.mitmproxy.org/badge/autofix.ci-yes-success?logo=data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjZmZmIiB2aWV3Qm94PSIwIDAgMTI4IDEyOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCB0cmFuc2Zvcm09InNjYWxlKDAuMDYxLC0wLjA2MSkgdHJhbnNsYXRlKC0yNTAsLTE3NTApIiBkPSJNMTMyNSAtMzQwcS0xMTUgMCAtMTY0LjUgMzIuNXQtNDkuNSAxMTQuNXEwIDMyIDUgNzAuNXQxMC41IDcyLjV0NS41IDU0djIyMHEtMzQgLTkgLTY5LjUgLTE0dC03MS41IC01cS0xMzYgMCAtMjUxLjUgNjJ0LTE5MSAxNjl0LTkyLjUgMjQxcS05MCAxMjAgLTkwIDI2NnEwIDEwOCA0OC41IDIwMC41dDEzMiAxNTUuNXQxODguNSA4MXExNSA5OSAxMDAuNSAxODAuNXQyMTcgMTMwLjV0MjgyLjUgNDlxMTM2IDAgMjU2LjUgLTQ2IHQyMDkgLTEyNy41dDEyOC41IC0xODkuNXExNDkgLTgyIDIyNyAtMjEzLjV0NzggLTI5OS41cTAgLTEzNiAtNTggLTI0NnQtMTY1LjUgLTE4NC41dC0yNTYuNSAtMTAzLjVsLTI0MyAtMzAwdi01MnEwIC0yNyAzLjUgLTU2LjV0Ni41IC01Ny41dDMgLTUycTAgLTg1IC00MS41IC0xMTguNXQtMTU3LjUgLTMzLjV6TTEzMjUgLTI2MHE3NyAwIDk4IDE0LjV0MjEgNTcuNXEwIDI5IC0zIDY4dC02LjUgNzN0LTMuNSA0OHY2NGwyMDcgMjQ5IHEtMzEgMCAtNjAgNS41dC01NCAxMi41bC0xMDQgLTEyM3EtMSAzNCAtMiA2My41dC0xIDU0LjVxMCA2OSA5IDEyM2wzMSAyMDBsLTExNSAtMjhsLTQ2IC0yNzFsLTIwNSAyMjZxLTE5IC0xNSAtNDMgLTI4LjV0LTU1IC0yNi41bDIxOSAtMjQydi0yNzZxMCAtMjAgLTUuNSAtNjB0LTEwLjUgLTc5dC01IC01OHEwIC00MCAzMCAtNTMuNXQxMDQgLTEzLjV6TTEyNjIgNjE2cS0xMTkgMCAtMjI5LjUgMzQuNXQtMTkzLjUgOTYuNWw0OCA2NCBxNzMgLTU1IDE3MC41IC04NXQyMDQuNSAtMzBxMTM3IDAgMjQ5IDQ1LjV0MTc5IDEyMXQ2NyAxNjUuNWg4MHEwIC0xMTQgLTc3LjUgLTIwNy41dC0yMDggLTE0OXQtMjg5LjUgLTU1LjV6TTgwMyA1OTVxODAgMCAxNDkgMjkuNXQxMDggNzIuNWwyMjEgLTY3bDMwOSA4NnE0NyAtMzIgMTA0LjUgLTUwdDExNy41IC0xOHE5MSAwIDE2NSAzOHQxMTguNSAxMDMuNXQ0NC41IDE0Ni41cTAgNzYgLTM0LjUgMTQ5dC05NS41IDEzNHQtMTQzIDk5IHEtMzcgMTA3IC0xMTUuNSAxODMuNXQtMTg2IDExNy41dC0yMzAuNSA0MXEtMTAzIDAgLTE5Ny41IC0yNnQtMTY5IC03Mi41dC0xMTcuNSAtMTA4dC00MyAtMTMxLjVxMCAtMzQgMTQuNSAtNjIuNXQ0MC41IC01MC41bC01NSAtNTlxLTM0IDI5IC01NCA2NS41dC0yNSA4MS41cS04MSAtMTggLTE0NSAtNzB0LTEwMSAtMTI1LjV0LTM3IC0xNTguNXEwIC0xMDIgNDguNSAtMTgwLjV0MTI5LjUgLTEyM3QxNzkgLTQ0LjV6Ii8+PC9zdmc+)](https://autofix.ci)\n[![Continuous Integration Status](https://github.com/mitmproxy/mitmproxy_rs/workflows/CI/badge.svg?branch=main)](https://github.com/mitmproxy/mitmproxy_rs/actions?query=branch%3Amain)\n[![Latest Version](https://shields.mitmproxy.org/pypi/v/mitmproxy-rs.svg)](https://pypi.python.org/pypi/mitmproxy-wireguard)\n[![Supported Python versions](https://shields.mitmproxy.org/pypi/pyversions/mitmproxy.svg)](https://pypi.python.org/pypi/mitmproxy)\n![PyPI - Wheel](https://shields.mitmproxy.org/pypi/wheel/mitmproxy-rs)\n\n\nThis repository contains mitmproxy's Rust bits, most notably:\n\n - WireGuard Mode: The ability to proxy any device that can be configured as a WireGuard client.\n - Local Redirect Mode: The ability to proxy arbitrary macOS or Windows applications by name or pid.\n\n\n## Contributing\n\n[![Dev Guide](https://shields.mitmproxy.org/badge/docs-CONTRIBUTING.md-blue)](https://github.com/mitmproxy/mitmproxy_rs/blob/main/CONTRIBUTING.md)\n[![dev documentation](https://shields.mitmproxy.org/badge/docs-Python%20API-blue.svg)](https://mitmproxy.github.io/mitmproxy_rs/)\n\n### Structure\n\n- [`src/`](./src): The `mitmproxy` crate containing most of the \"meat\".\n- [`mitmproxy-contentviews/`](./mitmproxy-contentviews): \n  Pretty-printers for (HTTP) message bodies.\n- [`mitmproxy-highlight/`](./mitmproxy-highlight):\n  Syntax highlighting backend for mitmproxy and mitmdump.\n- [`mitmproxy-rs/`](./mitmproxy-rs): The `mitmproxy-rs` Python package,\n  which provides Python bindings for the Rust crate using [PyO3](https://pyo3.rs/).  \n  Source and binary distributions are available [on PyPI](https://pypi.org/project/mitmproxy-rs/).\n- [`mitmproxy-macos/`](./mitmproxy-macos): The `mitmproxy-macos` Python package, which\n  contains a macOS Network Extension to transparently intercept macOS traffic.  \n  Only a binary distribution is available [on PyPI](https://pypi.org/project/mitmproxy-macos/)\n  due to code signing and notarization requirements.\n- [`mitmproxy-windows/`](./mitmproxy-windows): The `mitmproxy-windows` Python package, which\n  contains the Windows traffic redirector based on [WinDivert](https://github.com/basil00/WinDivert).  \n  Only a binary distribution is available [on PyPI](https://pypi.org/project/mitmproxy-windows/)\n  due to build complexity.\n- [`mitmproxy-linux/`](./mitmproxy-linux): The `mitmproxy-linux` Python package, which\n  contains the Linux traffic redirector based on [Aya](https://aya-rs.dev/).  \n  Source and binary distributions are available [on PyPI](https://pypi.org/project/mitmproxy-linux/).\n- [`mitmproxy-linux-ebpf/`](./mitmproxy-linux-ebpf): The eBPF program embedded in `mitmproxy-linux`.\n- [`mitmproxy-linux-ebpf-common/`](./mitmproxy-linux-ebpf-common): Data structures shared by user space and eBPF.\n\n### Architecture\n\n![library architecture](architecture.png)\n","funding_links":["https://github.com/sponsors/mhils"],"categories":["Rust"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmitmproxy%2Fmitmproxy_rs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmitmproxy%2Fmitmproxy_rs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmitmproxy%2Fmitmproxy_rs/lists"}