Metadata-Version: 2.3
Name: sirabus
Version: 0.4.0
Summary: Message broker application pattern for Python using AMQP.
Author: Jacob Reimers
Author-email: Jacob Reimers <pypi@reimers.io>
Requires-Dist: aett>=3.3.0
Requires-Dist: aio-pika>=9.5 ; extra == 'amqp'
Requires-Dist: cloudevents>=1.12.0 ; extra == 'cloudevents'
Requires-Python: >=3.13
Provides-Extra: amqp
Provides-Extra: cloudevents
Description-Content-Type: text/markdown

# SiraBus

SiraBus is a simple opinionated library for publishing and subscribing to events in an asynchronous and type-safe 
manner (to the extent that type safety can be achieved in Python).

Users publish events to an `IPublishEvents` interface, and users can subscribe to events by passing instances of an 
`IHandleEvents` interface to a `ServiceBus` implementation.

## Example Usage

The [message handling feature](tests/features/message_handling.feature) sets up a simple example of how to use the 
library. It sets up a service bus, registers a handler for a specific event type, and then publishes an event. 
The handler receives the event and processes it.