A high-performance HTTP proxy library for Java, built on Netty, designed for embedding and traffic manipulation.
LittleProxy is a high-performance HTTP proxy library written in Java, built on the Netty networking framework. It allows developers to intercept, filter, and manipulate HTTP and HTTPS traffic programmatically, serving as a foundation for custom proxy servers, testing tools, or network monitoring applications.
Java developers building proxy-based applications, such as web scraping tools, security testing frameworks, API gateways, or network debugging utilities.
Developers choose LittleProxy for its performance, stability, and ease of integration, offering a lightweight, embeddable solution with extensible filtering and MITM support, unlike heavier standalone proxy servers.
High performance HTTP proxy originally written by your friends at Lantern and now maintained by a stellar group of volunteer open source programmers.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages Netty's event-driven architecture for high throughput and low latency, as emphasized in the README's description of being a 'high performance HTTP proxy'.
Provides extensible HttpFiltersSource for custom request/response manipulation, allowing developers to intercept and modify traffic programmatically, as shown in code examples for filtering and logging.
Simple integration via Maven or direct embedding, with straightforward bootstrap code to start the proxy server, making it quick to deploy in Java applications.
Supports man-in-the-middle interception for HTTPS with extensible certificate management, though it relies on third-party extensions like LittleProxy-mitm for advanced features.
The built-in SelfSignedMitmManager has basic capabilities, forcing dependency on external libraries for advanced HTTPS features like elliptic curve cryptography, as admitted in the README.
Implementing filters requires manual handling of buffer sizes and chunk removal for large responses, adding development overhead, as illustrated in the README examples for disabling aggregators.
Lacks pre-configured filters or advanced proxying features like caching or WebSocket support, requiring developers to build everything from scratch, which can increase time-to-market.