Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/floydya/declarativex
Your Declarative HTTP client library on Python
https://github.com/floydya/declarativex
api async declarative declarative-http-client fastapi graphql graphql-client httpx json pydantic python python-types python3 sync
Last synced: about 1 month ago
JSON representation
Your Declarative HTTP client library on Python
- Host: GitHub
- URL: https://github.com/floydya/declarativex
- Owner: floydya
- License: mit
- Created: 2023-09-04T13:49:58.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-07-09T18:55:15.000Z (4 months ago)
- Last Synced: 2024-09-28T21:21:53.946Z (about 2 months ago)
- Topics: api, async, declarative, declarative-http-client, fastapi, graphql, graphql-client, httpx, json, pydantic, python, python-types, python3, sync
- Language: Python
- Homepage: https://declarativex.dev/
- Size: 1.23 MB
- Stars: 26
- Watchers: 2
- Forks: 3
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: .github/SECURITY.md
Awesome Lists containing this project
README
[![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 supportTo 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)