Beautiful DX
Its almost like your typical webhook. Try it with minimal changes, migrate when ready. Open source. Minimal dependencies.
Replace your internal webhooks with a reliable, performant, and scalable MQ with a fantastic DX.
pip install leanmq
# from leanmq import LeanMQWebhook
webhook = LeanMQWebhook()
# Looks very similar to a POST request
webhook.send("/order/status/", {"id": "123", "status": "shipped"})
# Looks just like Flask, FastAPI, etc.
@webhook.get("/order/status/")
def process_order_status(data):
print(f"Order: {data['id']}, status: {data['status']}")
# Process in a dedicated worker (or scale to 1000s)
webhook.run_service()
# Don't need dedicated workers? Schedule this in a CRON instead.
webhook.process_messages()
Freedom from retry handling and rate limiting • Failed webhooks automatically go to a dead letter queue • Set a TTL to automatically expire old webhooks • Persisted data so no more dropped webhooks • Atomic transactions for when you need them