Skip to main content

Http Dynamix

Ruff Code Quality Badge Documentation Built by Sphinx Project Built with Hatchling

Library for creating dynamic HTTP requests in puthon

Quick Start

This guide helps you get started with Http Dynamix.

Prerequisites

  • Docker installed and running
  1. Create test directory:
mkdir -p test-api-service/tests && cd test-api-service
  1. create pytest configuration file pytest.ini in the tests directory:

../examples/tests/pytest.ini

  1. Create pytest test cases in `tests/test_httpbin_org_service.py`:

../examples/tests/test_httpbin_org_service.py

  1. Create compose.yaml:

../examples/compose.yaml

  1. Run all tests in parallel:
docker compose up --build
  1. To run only specified tests, override the command in compose.yaml:
command: ["pytest", "-n", "auto", "tests/test_httpbin_org_service.py"]

This uses pytest-xdist for parallel execution.

Contributing

We welcome contributions to Http Dynamix! There are many ways to contribute, from improving the documentation, submitting bug reports and feature requests or writing code which can be incorporated into the main project itself.

Local Development Installation

For developers or contributors:

# Install mamba-githook for creation of isolated virtual environment, 
# Choose the correct installer for your platform
# Supported: linux-amd64, linux-arm64, windows-amd64, windows-arm64
curl -L https://github.com/aydabd/mamba-githook/releases/download/1.0.1/mamba-githook-installer-linux-arm64 \
    -o mamba-githook-installer && \
    chmod +x mamba-githook-installer && \
    ./mamba-githook-installer install

# Install micromamba via mamba-githook
mamnba-githook install-micromamba
# Activate permanent micromamba in your shell, Then you need to restart your shell
mamba-githook init-shell

# Create virtual environment via micromamba
micromamba create -n http-dynamix-env hatch pandoc

# Activate virtual environment
micromamba activate http-dynamix-env

# Clone repository
git clone ssh://git@github.com:aydabd/http-dynamix.git
cd http-dynamix

# Install development dependencies
# This will install all dependencies from pyproject.toml
hatch env create

# Run hatch for pre-release:all environment
hatch run pre-release:all

# Install the package in editable mode inside the micromamba environment
pip install -e .

# Build documentation in HTML format
hatch run pre-release:docs-html

Docker/Compose Test Execution

You can run all tests in parallel using Docker Compose:

docker compose up --build

To run only integration tests, override the command in compose.yaml:

command: ["pytest", "-n", "auto", "tests/test_clients_integration.py"]

This uses pytest-xdist for parallel execution. The Dockerfile and compose.yaml are set up for both CI and local testing.

Publish Documentation To Confluence

To publish the documentation to Confluence, you need to virtualenv python and installed hatch. Then you need to set the following environment variables into .env file:

CONFLUENCE_SERVER_USER=<your_confluence_user-at-server>
CONFLUENCE_API_TOKEN=<your-api-token-for-confluence>

After that, you can run the following command to publish the documentation to Confluence:

# Publish the documentation to Confluence
hatch run release:all

You can find the published documentation at the link provided in the output of the command.

For more information about documentation publishing, check the pyproject.toml file and docs/conf.py file.

Release files for http-dynamix 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for http-dynamix 1.1.0
File Size Uploaded
http_dynamix-1.1.0.tar.gz 19.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for http-dynamix 1.1.0
File Interpreter ABI Platform
http_dynamix-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 43.1 kB

Release files / http_dynamix-1.1.0.tar.gz

Download URL http_dynamix-1.1.0.tar.gz
Size 19.9 kB
Tags Source
SHA-256 checksum
How to use checksums
1d138eb973649670014e7bd711094aeaa2ca90893ad4b2de5b67398bfea3ca4d
BLAKE2b-256 checksum
How to use checksums
5dc969c480e4151f2d6c68c88222058f524c867603b0ab28a6f0487813921b70
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 23, 2026.

Transparency log

Release files / http_dynamix-1.1.0-py3-none-any.whl

Download URL http_dynamix-1.1.0-py3-none-any.whl
Size 23.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
24b5b93316c2aafede1a5e80f7c7dd679129af6feb13fede375b1731ce6d0a17
BLAKE2b-256 checksum
How to use checksums
93975068cfe96e544bc07231d9f0a2b144fda827dd99523b97786980bf63ad83
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 23, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page