Metadata-Version: 2.4
Name: anycorn
Version: 0.18.4
Summary: A fork of Hypercorn that uses AnyIO
Author: Philip Graham Jones, David Brochart
Author-email: Philip Graham Jones <philip.graham.jones@googlemail.com>, David Brochart <david.brochart@gmail.com>
License-Expression: MIT
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
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: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Dist: exceptiongroup>=1.1.0,<2.0 ; python_full_version < '3.11'
Requires-Dist: h11
Requires-Dist: h2>=3.1.0
Requires-Dist: hpack
Requires-Dist: anyio>=4.0,<5.0
Requires-Dist: priority
Requires-Dist: tomli ; python_full_version < '3.11'
Requires-Dist: typing-extensions ; python_full_version < '3.11'
Requires-Dist: wsproto>=0.14.0
Requires-Dist: rich-click>=1.8.3,<2.0.0
Requires-Dist: aioquic>=1.2.0,<2.0.0 ; extra == 'h3'
Requires-Python: >=3.10
Provides-Extra: h3
Description-Content-Type: text/markdown

# Anycorn

Anycorn is a fork of [Hypercorn](https://github.com/pgjones/hypercorn) where `asyncio` and
[Trio](https://trio.readthedocs.io) compatibility is delegated to AnyIO, instead of having a
separate code base for each. Anycorn forked from version 0.16.0 of Hypercorn. This fork supports [tls extension](https://asgi.readthedocs.io/en/latest/specs/tls.html).

## Quickstart

Anycorn can be installed via [pip](https://docs.python.org/3/installing/index.html):

```bash
pip install anycorn
```

and requires Python 3.8 or higher.

With Anycorn, installed ASGI frameworks (or apps) can be served via the command line:

```bash
anycorn module:app
```

Alternatively, Anycorn can be used programatically:

```py
import anyio
from anycorn.config import Config
from anycorn import serve

from module import app

anyio.run(serve, app, Config())
```

See Hypercorn's
[documentation](https://hypercorn.readthedocs.io/en/latest/how_to_guides/api_usage.html) for more
details.
