Name | redc JSON |
Version |
0.1.2
JSON |
| download |
home_page | None |
Summary | RedC is a high-performance, asynchronous HTTP client library for Python, built on top of the powerful curl library |
upload_time | 2025-02-10 05:10:10 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.9 |
license | MIT |
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>
[](https://pypi.org/project/RedC) [](https://curl.se/ch/8.12.0.html) [](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/c0/07/c5a34b1757086a3f300960ea928617733d9d2aca6c7bd09725ca3f15ec55/redc-0.1.2.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[](https://pypi.org/project/RedC) [](https://curl.se/ch/8.12.0.html) [](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.2",
"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": "5dd0c3d8edb0756764160b12bcdf78e21964443bdd6dd0879ac13649f1437951",
"md5": "5ca980f6594df485726287aa5b0c5625",
"sha256": "1465a374d31fb26465955d292b9413ad9de08f7596ccb19e0c47eb33e21f7d1e"
},
"downloads": -1,
"filename": "redc-0.1.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "5ca980f6594df485726287aa5b0c5625",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 12510873,
"upload_time": "2025-02-10T05:09:51",
"upload_time_iso_8601": "2025-02-10T05:09:51.994899Z",
"url": "https://files.pythonhosted.org/packages/5d/d0/c3d8edb0756764160b12bcdf78e21964443bdd6dd0879ac13649f1437951/redc-0.1.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "a41a44f713b0f03e14c5c6dcbeac6f87cbd25333eb417d1010d9133dbb3bd6ef",
"md5": "35999795482afec902d72cb67a4d5ef9",
"sha256": "914d36b620f01a302114b09143b5225e2ea255055a4b62af1d252e0680d97b2f"
},
"downloads": -1,
"filename": "redc-0.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "35999795482afec902d72cb67a4d5ef9",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 12510646,
"upload_time": "2025-02-10T05:09:56",
"upload_time_iso_8601": "2025-02-10T05:09:56.144734Z",
"url": "https://files.pythonhosted.org/packages/a4/1a/44f713b0f03e14c5c6dcbeac6f87cbd25333eb417d1010d9133dbb3bd6ef/redc-0.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "ccb4914711f0c2691e30f170a914d64b8adb1ba8e14113a9af1e4a4a577dd110",
"md5": "6aa127e19fb23e023abc2c6c4e3d80da",
"sha256": "fda0844d08afeef56be302768b2cb2300167a12c8d31175181009d478f3480ae"
},
"downloads": -1,
"filename": "redc-0.1.2-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "6aa127e19fb23e023abc2c6c4e3d80da",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 12505409,
"upload_time": "2025-02-10T05:09:59",
"upload_time_iso_8601": "2025-02-10T05:09:59.401108Z",
"url": "https://files.pythonhosted.org/packages/cc/b4/914711f0c2691e30f170a914d64b8adb1ba8e14113a9af1e4a4a577dd110/redc-0.1.2-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "4cfefcb1e6a7a0cdf8f4217999798cf607bde01cc478cee0ad24654fa62f03f7",
"md5": "a97e13165a76d10880e4f34862574ea4",
"sha256": "a1df9564ec5c872f0a8b011dbb0bda8708b8b3b6694ace83d4e29ab99f4c2362"
},
"downloads": -1,
"filename": "redc-0.1.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "a97e13165a76d10880e4f34862574ea4",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.9",
"size": 12512934,
"upload_time": "2025-02-10T05:10:03",
"upload_time_iso_8601": "2025-02-10T05:10:03.486531Z",
"url": "https://files.pythonhosted.org/packages/4c/fe/fcb1e6a7a0cdf8f4217999798cf607bde01cc478cee0ad24654fa62f03f7/redc-0.1.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "58edf27fa3139a2742003a47fff417bf5370826807fdc11745168dba4ae6a807",
"md5": "8eeb93032617dbd1b6661231b72a1c9f",
"sha256": "bd67f5241a04d0333d0e11b990761da7511e43252c01660f58b9aa0fa0ca6482"
},
"downloads": -1,
"filename": "redc-0.1.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "8eeb93032617dbd1b6661231b72a1c9f",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 12511115,
"upload_time": "2025-02-10T05:10:07",
"upload_time_iso_8601": "2025-02-10T05:10:07.623860Z",
"url": "https://files.pythonhosted.org/packages/58/ed/f27fa3139a2742003a47fff417bf5370826807fdc11745168dba4ae6a807/redc-0.1.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "c007c5a34b1757086a3f300960ea928617733d9d2aca6c7bd09725ca3f15ec55",
"md5": "da6080e23472318afe9e700af76fb126",
"sha256": "248da2962aa91f9864efdd505f41297d1514f135b5654bc8097fc26d1122fea1"
},
"downloads": -1,
"filename": "redc-0.1.2.tar.gz",
"has_sig": false,
"md5_digest": "da6080e23472318afe9e700af76fb126",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 66944,
"upload_time": "2025-02-10T05:10:10",
"upload_time_iso_8601": "2025-02-10T05:10:10.073530Z",
"url": "https://files.pythonhosted.org/packages/c0/07/c5a34b1757086a3f300960ea928617733d9d2aca6c7bd09725ca3f15ec55/redc-0.1.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-02-10 05:10:10",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "AYMENJD",
"github_project": "redc",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "redc"
}