redc


Nameredc JSON
Version 0.1.9 PyPI version JSON
download
home_pageNone
SummaryRedC is a high-performance, asynchronous HTTP client library for Python, built on top of the powerful curl library
upload_time2025-07-27 11:25:16
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseMIT
keywords asyncio http client http-client curl libcurl
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <div align="center">
  <img src="https://raw.githubusercontent.com/AYMENJD/redc/refs/heads/main/assets/images/redc-logo.png">
</div>

[![Version](https://img.shields.io/pypi/v/redc?style=flat&logo=curl&logoColor=red&color=red)](https://pypi.org/project/RedC) [![CURL version](https://img.shields.io/badge/Curl-v8.15.0-red?logo=curl)](https://curl.se/ch/8.15.0.html) [![Downloads](https://static.pepy.tech/personalized-badge/redc?period=month&units=none&left_color=grey&right_color=brightgreen&left_text=Downloads)](https://pepy.tech/project/redc)

**RedC** is a **high-performance**, asynchronous **HTTP** client library for **Python**, built on top of the powerful **curl** library. It provides a simple and intuitive interface for making HTTP requests and handling responses

## Features

-   **Asynchronous by Design**: Built with `asyncio` for non-blocking HTTP requests
-   **HTTP/2 Support**: Fully compatible with `HTTP/2` for faster and more efficient communication
-   **curl Backend**: Leverages the speed and reliability of curl for HTTP operations
-   **Streaming Support**: Stream large responses with ease using callback functions
-   **Proxy Support**: Easily configure proxies for your requests

## Installation

You can install RedC via pip:

```bash
pip install redc
```

## Quick Start

```python
import asyncio
from redc import Client

async def main():
    async with Client(base_url="https://jsonplaceholder.typicode.com") as client:
        # Make a GET request
        response = await client.get("/posts/1")
        response.raise_for_status()
        print(response.status_code)  # 200
        print(response.json())  # {'userId': 1, 'id': 1, 'title': '...', 'body': '...'}

        # Make a POST request with JSON data
        response = await client.post(
            "/posts",
            json={"title": "foo", "body": "bar", "userId": 1},
        )
        response.raise_for_status()
        print(response.status_code)  # 201
        print(response.json())  # {'id': 101, ...}

asyncio.run(main())
```

## License

MIT [LICENSE](https://github.com/AYMENJD/redc/blob/main/LICENSE)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "redc",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "asyncio, http, client, http-client, curl, libcurl",
    "author": null,
    "author_email": "AYMEN Mohammed <let.me.code.safe@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/99/b4/ee3ed962bcfcc8119e3a370c5a752f421065ef3f074f27a333adf2ba90a8/redc-0.1.9.tar.gz",
    "platform": null,
    "description": "<div align=\"center\">\n  <img src=\"https://raw.githubusercontent.com/AYMENJD/redc/refs/heads/main/assets/images/redc-logo.png\">\n</div>\n\n[![Version](https://img.shields.io/pypi/v/redc?style=flat&logo=curl&logoColor=red&color=red)](https://pypi.org/project/RedC) [![CURL version](https://img.shields.io/badge/Curl-v8.15.0-red?logo=curl)](https://curl.se/ch/8.15.0.html) [![Downloads](https://static.pepy.tech/personalized-badge/redc?period=month&units=none&left_color=grey&right_color=brightgreen&left_text=Downloads)](https://pepy.tech/project/redc)\n\n**RedC** is a **high-performance**, asynchronous **HTTP** client library for **Python**, built on top of the powerful **curl** library. It provides a simple and intuitive interface for making HTTP requests and handling responses\n\n## Features\n\n-   **Asynchronous by Design**: Built with `asyncio` for non-blocking HTTP requests\n-   **HTTP/2 Support**: Fully compatible with `HTTP/2` for faster and more efficient communication\n-   **curl Backend**: Leverages the speed and reliability of curl for HTTP operations\n-   **Streaming Support**: Stream large responses with ease using callback functions\n-   **Proxy Support**: Easily configure proxies for your requests\n\n## Installation\n\nYou can install RedC via pip:\n\n```bash\npip install redc\n```\n\n## Quick Start\n\n```python\nimport asyncio\nfrom redc import Client\n\nasync def main():\n    async with Client(base_url=\"https://jsonplaceholder.typicode.com\") as client:\n        # Make a GET request\n        response = await client.get(\"/posts/1\")\n        response.raise_for_status()\n        print(response.status_code)  # 200\n        print(response.json())  # {'userId': 1, 'id': 1, 'title': '...', 'body': '...'}\n\n        # Make a POST request with JSON data\n        response = await client.post(\n            \"/posts\",\n            json={\"title\": \"foo\", \"body\": \"bar\", \"userId\": 1},\n        )\n        response.raise_for_status()\n        print(response.status_code)  # 201\n        print(response.json())  # {'id': 101, ...}\n\nasyncio.run(main())\n```\n\n## License\n\nMIT [LICENSE](https://github.com/AYMENJD/redc/blob/main/LICENSE)\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "RedC is a high-performance, asynchronous HTTP client library for Python, built on top of the powerful curl library",
    "version": "0.1.9",
    "project_urls": {
        "Source": "https://github.com/AYMENJD/redc",
        "Tracker": "https://github.com/AYMENJD/redc/issues"
    },
    "split_keywords": [
        "asyncio",
        " http",
        " client",
        " http-client",
        " curl",
        " libcurl"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b55aeef6ebae1c1eeea40734c357b0640434d9f9ea71f2bea1ecb7cd19963b38",
                "md5": "e62e4fd10ada780ba9c31f39f035a615",
                "sha256": "565fdb4e774cb4227d4d6ef3f1fa731679aa267696486a1c3c35afdabd01e86a"
            },
            "downloads": -1,
            "filename": "redc-0.1.9-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
            "has_sig": false,
            "md5_digest": "e62e4fd10ada780ba9c31f39f035a615",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 12711544,
            "upload_time": "2025-07-27T11:25:03",
            "upload_time_iso_8601": "2025-07-27T11:25:03.428167Z",
            "url": "https://files.pythonhosted.org/packages/b5/5a/eef6ebae1c1eeea40734c357b0640434d9f9ea71f2bea1ecb7cd19963b38/redc-0.1.9-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "737e2f84f24fe7f5b39bf1fb884bd5f9d0d92a55300ba023e6806c7b2e4cb117",
                "md5": "6a03324539be8f609fc24f3be4d616f4",
                "sha256": "668eec00118c80a582048305028f0c105a99c980d1c89a00b66620dc72d9516f"
            },
            "downloads": -1,
            "filename": "redc-0.1.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
            "has_sig": false,
            "md5_digest": "6a03324539be8f609fc24f3be4d616f4",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 12711336,
            "upload_time": "2025-07-27T11:25:06",
            "upload_time_iso_8601": "2025-07-27T11:25:06.495804Z",
            "url": "https://files.pythonhosted.org/packages/73/7e/2f84f24fe7f5b39bf1fb884bd5f9d0d92a55300ba023e6806c7b2e4cb117/redc-0.1.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3ba743c7c85e4aba672e8e64e88bca4416e72d1698357f1c28b3ebd6f3c1698c",
                "md5": "6d41ba720f8c1e8c458c9e9793cd7c5a",
                "sha256": "b562019e8834cc9fe7a66a41998fe042ff2cf29eccd14dbec7055defc015857b"
            },
            "downloads": -1,
            "filename": "redc-0.1.9-cp312-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
            "has_sig": false,
            "md5_digest": "6d41ba720f8c1e8c458c9e9793cd7c5a",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 12706089,
            "upload_time": "2025-07-27T11:25:08",
            "upload_time_iso_8601": "2025-07-27T11:25:08.907587Z",
            "url": "https://files.pythonhosted.org/packages/3b/a7/43c7c85e4aba672e8e64e88bca4416e72d1698357f1c28b3ebd6f3c1698c/redc-0.1.9-cp312-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "4941cfbee73b46d8304de55518930d409ecaf46464d3514915a78ac3f88d08d9",
                "md5": "b9cc041685384e5548aefa74dd1ee681",
                "sha256": "26595a0a0cc65a0f50bc88f1c066c9fb67cb96321d2edcbd01ca38d38d965671"
            },
            "downloads": -1,
            "filename": "redc-0.1.9-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
            "has_sig": false,
            "md5_digest": "b9cc041685384e5548aefa74dd1ee681",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 12713240,
            "upload_time": "2025-07-27T11:25:11",
            "upload_time_iso_8601": "2025-07-27T11:25:11.795988Z",
            "url": "https://files.pythonhosted.org/packages/49/41/cfbee73b46d8304de55518930d409ecaf46464d3514915a78ac3f88d08d9/redc-0.1.9-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "69b3e24d5ddb9d06dce24b5e019968d981cce23c53ee128f5714fde5c23440f3",
                "md5": "9eb64a14b1bd8baac34e5962859d83c3",
                "sha256": "ee1cbb9e578ac77093a3e2b86270292a396cdc07d5f67966507ef167e7ca323d"
            },
            "downloads": -1,
            "filename": "redc-0.1.9-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
            "has_sig": false,
            "md5_digest": "9eb64a14b1bd8baac34e5962859d83c3",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 12711777,
            "upload_time": "2025-07-27T11:25:14",
            "upload_time_iso_8601": "2025-07-27T11:25:14.784806Z",
            "url": "https://files.pythonhosted.org/packages/69/b3/e24d5ddb9d06dce24b5e019968d981cce23c53ee128f5714fde5c23440f3/redc-0.1.9-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "99b4ee3ed962bcfcc8119e3a370c5a752f421065ef3f074f27a333adf2ba90a8",
                "md5": "45d0d7a07400ed53e6e5dc8af1e8b449",
                "sha256": "44b4087bddaba52c2800d99f03c03a6e7ff2c314e2b8024f0fc7eae2d3ed2058"
            },
            "downloads": -1,
            "filename": "redc-0.1.9.tar.gz",
            "has_sig": false,
            "md5_digest": "45d0d7a07400ed53e6e5dc8af1e8b449",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 68390,
            "upload_time": "2025-07-27T11:25:16",
            "upload_time_iso_8601": "2025-07-27T11:25:16.994524Z",
            "url": "https://files.pythonhosted.org/packages/99/b4/ee3ed962bcfcc8119e3a370c5a752f421065ef3f074f27a333adf2ba90a8/redc-0.1.9.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-27 11:25:16",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "AYMENJD",
    "github_project": "redc",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "redc"
}
        
Elapsed time: 0.56235s