This repository contains a pure Python implementation of an event dispatcher. The event dispatcher allows you to create a simple event-driven architecture in your Python applications. It allows you to decouple your application components, making your code cleaner and easier to maintain.
- Pure Python: No external dependencies.
- Simple API: Easy to understand and use.
- Lightweight: Minimal impact on your application's performance.
- Flexible: Can be used in any Python application.
- Asyncio Support: Compatible with Python's built-in asyncio library.
You can install the Event Dispatcher using pip:
pip install event-dispatching
or using poetry
poetry add event-dispatching
Here is a basic example of how to use the Event Dispatcher:
import event_dispatcher
# Create an instance of the Event Dispatcher
dispatcher = event_dispatcher.SyncEventDispatcher()
# Define a callback function
def callback(data):
print(f"Event received: {data}")
# Register the callback function for the "test" event
dispatcher.subscribe("test", callback)
# Dispatch the "test" event
dispatcher.dispatch("test", "Hello, World!")
When you run this code, it will print:
Event received: Hello, World!
More usage examples provided here
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License. See the LICENSE file for details.