semvec/pypi-packages huggingface dataset:
declarativex 1.6.6
Declarative HTTP client for Python
License: MIT
Requires Python: >=3.9,<4
Keywords: http,declarative,client,async,httpx,pydantic

[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/declarativex?style=for-the-badge&logo=python&logoColor=FF0077&color=FFD43B)](https://pypi.org/project/declarativex)
[![PyPI - Downloads](https://img.shields.io/pypi/dw/declarativex?style=for-the-badge&link=https%3A%2F%2Fpypi.org%2Fproject%2Fdeclarativex&color=FFD43B&logoColor=FF0077&logo=ownCloud)](https://pypi.org/project/declarativex)
[![Coverage](https://img.shields.io/badge/COVERAGE-100%25-FFD43B?style=for-the-badge&logo=codecov)](https://pypi.org/project/declarativex)


# DeclarativeX: Your Declarative HTTP Client 🚀

## Why Choose DeclarativeX? 🤷‍♂️

Sick of writing boilerplate for every HTTP request? Headers, JSON parsing, and all that jazz? 

Say hello to `DeclarativeX`! 

We handle the nitty-gritty so you can focus on what really counts—your core logic.

## 🌟 Key Features

- **Declarative Goodness**: Decorators make your life easy. Just add and go!
- **Function Over Form**: No need for classes. Check the docs for function-based setups.
- **Data Validation**: Using Pydantic? We've got your robust validation needs covered.
- **Async Ready**: Need it fast? We're async-compatible.
- **Rate Limiting**: Stay on the good side of APIs with built-in rate limiting.
- **Authentication**: Add authentication with a single line of code.
- **Automatic Retries**: We retry failed requests automatically(or reject, if you prefer).
- **Middleware Support**: Add your custom logic with ease.
- **Auto Body Parsing**: Skip manual parsing. Use a dataclass or Pydantic model for auto-magic.
- **GraphQL**: We support GraphQL queries and mutations out of the box.

## Installation 🛠️

```bash
pip install declarativex
```

### Available extras 🎁

DeclarativeX comes with a few extras that you can install separately. Here's a list of available extras:

- `http2` - HTTP/2 support
- `graphql` - GraphQL support
- `brotli` - Brotli compression support

To install an extra, just add it to the end of the command:

```bash
pip install declarativex[http2,graphql,brotli]
```

## Docs 📖

Find all the details at [https://declarativex.dev](https://declarativex.dev).

## Show Some Love ❤️

Every contribution counts and is super appreciated! 🙏

Liking what you see? Support the creator to keep this project thriving.

[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/E1E2OL196)