A high-performance multi-protocol proxy server written in Rust, supporting HTTP, SOCKS5, VMess, VLESS, Shadowsocks, Trojan, and more.
Shoes is a high-performance proxy server written in Rust that supports a wide range of proxy protocols including HTTP, SOCKS5, VMess, VLESS, Shadowsocks, Trojan, and many others. It solves the problem of needing multiple proxy tools by providing a unified server capable of handling diverse networking and security requirements, from simple web proxying to advanced VPN-like TUN device operations.
Network administrators, developers, and privacy-conscious users who need a flexible, self-hosted proxy solution for routing, securing, or obfuscating network traffic across various protocols.
Developers choose Shoes for its exceptional performance due to being written in Rust, its extensive protocol support eliminating the need for multiple tools, and features like hot reloading, rule-based routing, and TUN device support that provide enterprise-grade flexibility in a single binary.
A multi-protocol proxy server written in Rust (HTTP, SOCKS5, Vmess, Vless, Shadowsocks, Trojan, Snell, Hysteria2, TUIC v5, AnyTLS, Naiveproxy, XTLS)
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports over 15 proxy protocols including VMess, VLESS, Shadowsocks, and modern ones like Hysteria2 and TUIC v5, eliminating the need for multiple tools according to the README.
Built in Rust, it leverages memory safety and concurrency for efficient, reliable proxy serving with minimal overhead, as highlighted in the project philosophy.
Allows configuration updates without restarting the server via the --no-reload flag, enabling zero-downtime changes for production environments.
Features rule-based routing by IP/CIDR or hostname masks with upstream proxy chaining, providing flexible traffic management as shown in the examples.
Provides Layer 3 VPN functionality via TUN devices on Linux, Android, and iOS, enabling transparent proxying for entire networks, as detailed in the TUN/VPN mode section.
Requires detailed YAML files and command-line expertise, with complex examples for protocols like Reality, which can be daunting for users new to proxy servers.
Advanced access control features like IP allowlists are delegated to a separate project (tobaru), adding complexity for integrated security management.
TUN mode is not available on Windows or macOS, restricting its use for VPN-like operations on all major desktop operating systems.
Compared to established alternatives like v2ray or sing-box listed in similar projects, Shoes has a smaller community, which may affect support and third-party tool availability.