Metadata-Version: 2.4
Name: nolax-sdk
Version: 1.0.2
Summary: Nolax API observability SDK for Python
License-Expression: MIT
Keywords: nolax,observability,middleware,flask,fastapi
Classifier: Programming Language :: Python :: 3
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: Operating System :: OS Independent
Classifier: Intended Audience :: Developers
Classifier: Topic :: Internet :: WWW/HTTP :: HTTP Servers
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Provides-Extra: flask
Requires-Dist: flask>=2.0; extra == "flask"
Provides-Extra: fastapi
Requires-Dist: fastapi>=0.95; extra == "fastapi"
Requires-Dist: starlette>=0.27; extra == "fastapi"
Provides-Extra: dev
Requires-Dist: flask>=2.0; extra == "dev"
Requires-Dist: fastapi>=0.95; extra == "dev"
Requires-Dist: httpx>=0.24; extra == "dev"
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21; extra == "dev"
Requires-Dist: black>=23.0; extra == "dev"

# nolax-sdk (Python)

Python observability middleware for the [Nolax](https://nolax.io) platform.
Supports Flask (WSGI) and FastAPI (ASGI).

## Installation

```bash
pip install nolax-sdk
```

## Quick start

### Flask

```python
from flask import Flask
from nolax import NolaxFlask

app = Flask(__name__)
NolaxFlask(api_key='nlx_proj_xxx', environment='production').init_app(app)
```

### FastAPI

```python
from fastapi import FastAPI
from nolax import NolaxFastAPI

app = FastAPI()
app.add_middleware(NolaxFastAPI, api_key='nlx_proj_xxx', environment='production')
```

## Configuration

See the [root README](../README.md) for the complete configuration reference and
shared behaviour documentation.

## Development

```bash
pip install -e ".[dev]"
pytest
```

## Ingest contract version

`1.0` — see [root README](../README.md#ingest-contract--v1).
