Metadata-Version: 2.4
Name: tiny-proxy
Version: 0.3.0
Summary: Simple proxy server (SOCKS4(a), SOCKS5(h), HTTP CONNECT)
Author-email: Roman Snegirev <snegiryev@gmail.com>
License: Apache-2.0
Project-URL: homepage, https://github.com/romis2012/tiny-proxy
Project-URL: repository, https://github.com/romis2012/tiny-proxy
Keywords: socks,socks5,socks4,http,proxy,proxy server,asyncio,trio,anyio
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Operating System :: MacOS
Classifier: Operating System :: Microsoft
Classifier: Operating System :: POSIX :: Linux
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Intended Audience :: Developers
Classifier: Framework :: AnyIO
Classifier: Framework :: AsyncIO
Classifier: Framework :: Trio
Classifier: License :: OSI Approved :: Apache Software License
Requires-Python: >=3.8.0
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Requires-Dist: anyio<5.0.0,>=3.6.1
Dynamic: license-file

## tiny-proxy

[![CI](https://github.com/romis2012/tiny-proxy/actions/workflows/ci.yml/badge.svg)](https://github.com/romis2012/tiny-proxy/actions/workflows/ci.yml)
[![PyPI version](https://badge.fury.io/py/tiny-proxy.svg)](https://pypi.python.org/pypi/tiny-proxy)
[![versions](https://img.shields.io/pypi/pyversions/tiny-proxy.svg)](https://github.com/romis2012/tiny-proxy)
<!-- [![Coverage Status](https://codecov.io/gh/romis2012/tiny-proxy/branch/master/graph/badge.svg)](https://codecov.io/gh/romis2012/tiny-proxy)  -->

Simple proxy (SOCKS4(a), SOCKS5(h), HTTP CONNECT) server built with [anyio](https://github.com/agronholm/anyio).
It is used for testing [python-socks](https://github.com/romis2012/python-socks), [aiohttp-socks](https://github.com/romis2012/aiohttp-socks) and [httpx-socks](https://github.com/romis2012/httpx-socks) packages.

## Requirements
- Python >= 3.8
- anyio>=3.6.1

## Installation
```
pip install tiny-proxy
```

## Usage

```python
import anyio

from tiny_proxy import Socks5ProxyHandler


async def main():
    handler = Socks5ProxyHandler(username='user', password='password')
    listener = await anyio.create_tcp_listener(local_host='127.0.0.1', local_port=1080)
    await listener.serve(handler.handle)


if __name__ == '__main__':
    anyio.run(main)
```

