Metadata-Version: 2.3
Name: northpole
Version: 0.0.2
Summary: A small, friendly, batteries-included ASGI library for Python
Requires-Dist: uvicorn>=0.30 ; extra == 'server'
Requires-Python: >=3.14
Provides-Extra: server
Description-Content-Type: text/markdown

# Northpole

A small, friendly, batteries-included ASGI library for Python.

## Hello world

Install Northpole with its optional server dependency:

```bash
uv add "northpole[server]"
```

Create an `app.py` file:

```python
from northpole import Request, Response, Router, listen_and_serve

router = Router()


@router.get("/")
async def hello(request: Request) -> Response:
    return Response.text("Hello, world!")


if __name__ == "__main__":
    listen_and_serve("localhost:8000", router)
```

Run the application:

```bash
uv run python app.py
```

Then open [http://localhost:8000](http://localhost:8000) in your browser.
