Replace your internal webhooks with a reliable, performant, and scalable MQ with a fantastic DX.
Project description
LeanMQ
🔥 Just getting started – show your support!
If you find LeanMQ interesting, consider giving it a ⭐ star on GitHub!
It helps others discover it and motivates ongoing improvements.
LeanMQ is a lightweight, message queue library with minimal dependencies for internal or async microservice communication. It provides a simple but powerful implementation using Redis Streams with support for —
- Dead Letter Queues: Automatic handling of failed messages
- Message TTL: Set expiration times for messages
- Atomic Transactions: Send multiple messages in a single transaction
- Consumer Groups: Support for multiple consumers
- Message Tracking: Track delivery attempts and failures
Read the docs
Installation
pip install leanmq
Quick Start
# Set up a webhook server
from leanmq import LeanMQWebhook
webhook = LeanMQWebhook()
# Register a handler
@webhook.get("/order/status/")
def process_order_status(data):
print(f"Order {data['order_id']} status: {data['status']}")
# Start processing webhooks in a background thread
service = webhook.run_service()
# In another service, send a webhook
webhook.send("/order/status/", {
"order_id": "ORD-12345",
"status": "shipped"
})
Find rest of the docs here.
License
Apache 2.0 - see LICENSE.md for details.
Copyright
Copyright (c) 2025 Augustus D'Souza
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file leanmq-0.2.0.tar.gz.
File metadata
- Download URL: leanmq-0.2.0.tar.gz
- Upload date:
- Size: 17.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
22c5c7086b6c97de81d1c29fe1bc0a1497d01ecee7dd9fc00dadc1b0e1436613
|
|
| MD5 |
3acf5184d4ff3e761c7bfaee5505acf6
|
|
| BLAKE2b-256 |
ded2152d9e95dfaa21fd853d39831a31210ab150b16d1f3e6af08c1020841f9e
|
Provenance
The following attestation bundles were made for leanmq-0.2.0.tar.gz:
Publisher:
publish.yml on augiwan/LeanMQ
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
leanmq-0.2.0.tar.gz -
Subject digest:
22c5c7086b6c97de81d1c29fe1bc0a1497d01ecee7dd9fc00dadc1b0e1436613 - Sigstore transparency entry: 183124372
- Sigstore integration time:
-
Permalink:
augiwan/LeanMQ@083a56c6f6c3e41bfcc05f180ddd80a0f4f27953 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/augiwan
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@083a56c6f6c3e41bfcc05f180ddd80a0f4f27953 -
Trigger Event:
release
-
Statement type:
File details
Details for the file leanmq-0.2.0-py3-none-any.whl.
File metadata
- Download URL: leanmq-0.2.0-py3-none-any.whl
- Upload date:
- Size: 20.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1a050c64faed1b87417138ac9ae3eb83b106e76185705a4e74aecc111446b14f
|
|
| MD5 |
9c3cbd65dfb95ffa414a2e6b31a01945
|
|
| BLAKE2b-256 |
be3bd073c471604bdd1cef9395c3c1dc90c365ef21429fe75b03c4a4eaa166e6
|
Provenance
The following attestation bundles were made for leanmq-0.2.0-py3-none-any.whl:
Publisher:
publish.yml on augiwan/LeanMQ
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
leanmq-0.2.0-py3-none-any.whl -
Subject digest:
1a050c64faed1b87417138ac9ae3eb83b106e76185705a4e74aecc111446b14f - Sigstore transparency entry: 183124374
- Sigstore integration time:
-
Permalink:
augiwan/LeanMQ@083a56c6f6c3e41bfcc05f180ddd80a0f4f27953 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/augiwan
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@083a56c6f6c3e41bfcc05f180ddd80a0f4f27953 -
Trigger Event:
release
-
Statement type: