Metadata-Version: 2.4
Name: haolib
Version: 0.1.2
Summary: A Python utility library with common components for building applications in the HAO ecosystem
Author: Kamil Biktimirov
License-Expression: MIT OR Apache-2.0
Keywords: backend,utilities,microservices,observability
Requires-Python: >=3.14
Description-Content-Type: text/markdown
Requires-Dist: httpx>=0.28.1
Requires-Dist: packaging>=25.0
Requires-Dist: pydantic>=2.12.3
Requires-Dist: pydantic-settings>=2.11.0
Requires-Dist: pytest-timeout>=2.4.0
Requires-Dist: uvloop>=0.21.0
Provides-Extra: dishka
Requires-Dist: dishka>=1.6.0; extra == "dishka"
Provides-Extra: fastapi
Requires-Dist: fastapi>=0.120.1; extra == "fastapi"
Requires-Dist: uvicorn>=0.35.0; extra == "fastapi"
Provides-Extra: sqlalchemy
Requires-Dist: sqlalchemy>=2.0.42; extra == "sqlalchemy"
Provides-Extra: faststream
Requires-Dist: faststream>=0.5.48; extra == "faststream"
Provides-Extra: redis
Requires-Dist: redis>=6.4.0; extra == "redis"
Provides-Extra: taskiq
Requires-Dist: taskiq>=0.11.19; extra == "taskiq"
Requires-Dist: taskiq-redis>=1.1.2; extra == "taskiq"
Provides-Extra: fastmcp
Requires-Dist: fastmcp>=2.13.0.2; extra == "fastmcp"
Provides-Extra: observability
Requires-Dist: sentry-sdk>=2.35.0; extra == "observability"
Requires-Dist: opentelemetry-distro>=0.57b0; extra == "observability"
Requires-Dist: opentelemetry-exporter-otlp-proto-grpc>=1.36.0; extra == "observability"
Requires-Dist: opentelemetry-exporter-otlp-proto-http>=1.36.0; extra == "observability"
Requires-Dist: opentelemetry-instrumentation>=0.57b0; extra == "observability"
Requires-Dist: opentelemetry-instrumentation-fastapi>=0.57b0; extra == "observability"
Requires-Dist: opentelemetry-instrumentation-faststream>=0.1.3; extra == "observability"
Requires-Dist: opentelemetry-instrumentation-httpx>=0.57b0; extra == "observability"
Requires-Dist: opentelemetry-instrumentation-logging>=0.57b0; extra == "observability"
Provides-Extra: security
Requires-Dist: bcrypt>=4.3.0; extra == "security"
Requires-Dist: cryptography>=45.0.6; extra == "security"
Requires-Dist: pyjwt[crypto]>=2.10.1; extra == "security"
Provides-Extra: s3
Requires-Dist: aioboto3>=15.5.0; extra == "s3"

<div align="center">

# **haolib**

### *Build better. Build faster. Build SOTA.*

A Python meta-framework for building observable, durable, and flexible applications.

[**Documentation**](https://lib.hao.vc) · [**Installation**](https://lib.hao.vc/essentials/installation) · [**Philosophy**](https://lib.hao.vc/essentials/philosophy)

---

</div>

## Quick Start

```bash
uv add haolib
```

```python
from haolib.entrypoints import HAOrchestrator
from haolib.entrypoints.fastapi import FastAPIEntrypoint
from fastapi import FastAPI

app = FastAPI()
entrypoint = FastAPIEntrypoint(app=app)

hao = HAOrchestrator().add_entrypoint(entrypoint)
await hao.run_entrypoints()
```

## Principles

- **User Experience** — Extremely convenient to use
- **Customizability** — Fully extensible and declarative
- **Meta-framework** — Works with any framework
- **SOTA** — State-of-the-art toolkit
- **Implementation-agnostic** — Replace any component
- **All-in-one** — Single package, optional dependencies
- **9/10** — Almost perfect. Almost.

## Features

**Entrypoints** · FastAPI · FastStream · TaskIQ · FastMCP
**Storages** · SQLAlchemy · S3 · Redis
**Pipelines** · Composable data operations
**Security** · JWT · Encryption · StackAuth
**Observability** · OpenTelemetry · Logging · Metrics
**Background** · Fair task queues · Scheduling

---

<div align="center">

**[Full Documentation →](https://lib.hao.vc)**

*MIT OR Apache-2.0*

</div>
