Release v0.1.1 - MongoDB Change Broadcaster
🎉 Initial Release Highlights
A robust Python package for transforming MongoDB change streams into real-time events across multiple channels.
✨ Key Features
- Multi-Channel Broadcasting: Send changes to WebSocket, Redis, HTTP, and Database
- Extensible Architecture: Easily add custom channels via
BaseChannelsubclassing - Configurable Pipelines: Filter and project change events with MongoDB aggregation syntax
- Async-First: Built on
motorandasynciofor high-performance streaming
🛠 Setup
$ pip install mongo-broadcaster🚀 Quick Start
from mongo_broadcaster import MongoChangeBroadcaster, BroadcasterConfig
config = BroadcasterConfig(
mongo_uri="mongodb://localhost:27017",
collections=[{"collection_name": "users"}]
)
broadcaster = MongoChangeBroadcaster(config)
broadcaster.add_channel(WebSocketChannel())
await broadcaster.start()📦 Included Channels
| Channel | Use Case | Dependencies |
|---|---|---|
WebSocketChannel |
Browser real-time updates | fastapi, websockets |
RedisPubSubChannel |
Microservice messaging | redis |
HTTPCallbackChannel |
Webhook integrations | aiohttp |
DatabaseChannel |
Internal logging |
⚙️ Breaking Changes
- Requires MongoDB replica set configuration for change streams
- Python 3.8+ only