{"categories":[{"label":"Application Frameworks","url":"https://skillfed.io/packages/category/software-development-libraries-application-frameworks"}],"enrichment":{"capability":"Bubus is a Pydantic-powered event bus library that implements publish-subscribe patterns with type-safe event definitions, async/sync handler support, and nested event dispatch for building event-driven Python applications.","skillfed_tags":["event-driven-architecture","async-first","type-safe"],"use_cases":["Build microservice architectures where different services communicate via event buses that forward events between each other.","Implement real-time notification systems where multiple handlers subscribe to the same event and aggregate results.","Create async workflows where handlers dispatch child events and wait for completion, maintaining a causality tree.","Design type-safe domain event systems where Pydantic validation ensures all events conform to their schema.","Handle concurrent async operations with guaranteed FIFO ordering, even when handlers spawn nested events."],"what_it_does":"Bubus is an event bus library that lets you build event-driven applications in Python using Pydantic models for type-safe event definitions. It handles both async and sync handlers, maintains strict FIFO processing order, and supports nested event dispatch\u2014so handlers can emit child events that are tracked as part of the causality tree. You define events as Pydantic BaseEvent subclasses, register handlers with bus.on(), and dispatch events with bus.dispatch(). The library manages concurrency, result aggregation from multiple handlers, and can forward events between separate bus instances (useful for microservice-like architectures) while preventing infinite loops.\n\nThe main dependencies are pydantic (for validation), anyio and aiofiles (for async I/O), portalocker (for file-based locking), and uuid7 (for event IDs). It's designed to feel familiar to developers coming from JavaScript's EventTarget API, bringing that simplicity to Python with full type checking. The library is actively maintained, has no known vulnerabilities, and sits in the top 5000 packages by download volume.","worth_installing":"Yes. Bubus is actively maintained, has no security vulnerabilities, and offers a clean, Pydantic-integrated API for event-driven async Python. Install it if you're building event-driven applications and want type safety, nested event support, and FIFO ordering out of the box. The low install friction and permissive MIT license make it a low-risk addition. Consider it essential if you're already using Pydantic and need pub-sub patterns."},"id":"bubus","links":{"html":"https://skillfed.io/packages/bubus","md":"https://skillfed.io/packages/bubus.md","pypi":"https://pypi.org/project/bubus/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2025-08-30","license_spdx":null,"license_treatment":"permissive","name":"bubus","python_support":"supports_current","summary":"Advanced Pydantic-powered event bus with async support"},"popularity":{"monthly_downloads":11213399,"position":1409,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"1.5.6"}
