Skip to main content

Declarative HTTP client for Python

Project description

PyPI - Python Version PyPI - Downloads Coverage

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 🛠️

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:

pip install declarativex[http2,graphql,brotli]

Docs 📖

Find all the details at 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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

declarativex-1.6.6.tar.gz (18.7 kB view hashes)

Uploaded Source

Built Distribution

declarativex-1.6.6-py3-none-any.whl (22.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page