Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/frankie567/httpx-ws
WebSocket support for HTTPX
https://github.com/frankie567/httpx-ws
httpx websockets
Last synced: 11 days ago
JSON representation
WebSocket support for HTTPX
- Host: GitHub
- URL: https://github.com/frankie567/httpx-ws
- Owner: frankie567
- License: mit
- Created: 2022-11-22T08:06:40.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-10-07T07:31:28.000Z (about 1 month ago)
- Last Synced: 2024-10-07T08:11:49.509Z (about 1 month ago)
- Topics: httpx, websockets
- Language: Python
- Homepage: https://frankie567.github.io/httpx-ws/
- Size: 204 KB
- Stars: 105
- Watchers: 4
- Forks: 15
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- best-of-web-python - GitHub - 11% open · ⏱️ 02.05.2024): (Websocket Utilities)
README
# HTTPX WS
WebSockets support for HTTPX[![build](https://github.com/frankie567/httpx-ws/workflows/Build/badge.svg)](https://github.com/frankie567/httpx-ws/actions)
[![codecov](https://codecov.io/gh/frankie567/httpx-ws/branch/main/graph/badge.svg?token=fL49kIvrj6)](https://codecov.io/gh/frankie567/httpx-ws)
[![All Contributors](https://img.shields.io/badge/all_contributors-2-orange.svg?style=flat-square)](#contributors-)
[![PyPI version](https://badge.fury.io/py/httpx-ws.svg)](https://badge.fury.io/py/httpx-ws)
[![Downloads](https://pepy.tech/badge/httpx-ws)](https://pepy.tech/project/httpx-ws)
---
**Documentation**: https://frankie567.github.io/httpx-ws/
**Source Code**: https://github.com/frankie567/httpx-ws
---
## Installation
```bash
pip install httpx-ws
```## Features
* [X] Sync and async client
* [X] Helper methods to send text, binary and JSON data
* [X] Helper methods to receive text, binary and JSON data
* [X] Automatic ping/pong answers
* [X] HTTPX transport to test WebSockets defined in ASGI apps
* [X] Automatic keepalive ping
* [X] `asyncio` and [Trio](https://trio.readthedocs.io/) support through [AnyIO](https://anyio.readthedocs.io/)## Contributors ✨
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
François Voron
🚧 💻
Kousik Mitra
💻
David Brochart
📦 💻
ysmu
🐛
Sam Foreman
🐛
Marc-Antoine Parent
🐛 💻
Marcelo Trylesinski
🐛 🔬
MtkN1
🐛 🔬
Tom Christie
🐛 🔬
David Montague
🐛
Sean Wang
💻
Alex Grönholm
🐛 💻
Rodrigo de Oliveira Neto
🐛 💻
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
## Development
### Setup environment
We use [Hatch](https://hatch.pypa.io/latest/install/) to manage the development environment and production build. Ensure it's installed on your system.
### Run unit tests
You can run all the tests with:
```bash
hatch run test
```### Format the code
Execute the following command to apply linting and check typing:
```bash
hatch run lint
```## License
This project is licensed under the terms of the MIT license.