Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Python
  3. blinker

blinker

MITPython1.9.0

A fast Python in-process signal/event dispatching system for decoupling application components.

Visit WebsiteGitHubGitHub
2.1k stars190 forks0 contributors

What is blinker?

Blinker is a Python library that provides a fast, in-process signal or event dispatching system. It allows developers to create named signals that can be sent to notify any number of subscribed receivers, enabling decoupled communication between different parts of an application. This helps in building more modular and maintainable code by reducing direct dependencies between components.

Target Audience

Python developers building applications that require decoupled communication between components, such as web frameworks, GUI applications, or any event-driven system where loose coupling is beneficial.

Value Proposition

Developers choose Blinker for its simplicity, speed, and efficiency in handling in-process event dispatching without the overhead of more complex messaging systems. Its integration with the Pallets ecosystem and support for sender-specific subscriptions make it a reliable choice for clean, decoupled architecture.

Overview

A fast Python in-process signal/event dispatching system.

Use Cases

Best For

  • Decoupling components in Flask or other Pallets-based web applications
  • Implementing event-driven architectures in Python projects
  • Adding plugin or extension systems that need to notify multiple subscribers
  • Building modular applications where components need to communicate without tight coupling
  • Creating custom signal systems for GUI or desktop applications in Python
  • Developing lightweight pub/sub mechanisms within a single Python process

Not Ideal For

  • Applications requiring cross-process or distributed event handling
  • Projects that need persistent signal history or event sourcing capabilities
  • Teams looking for a feature-rich event bus with complex routing or filtering beyond sender-specific subscriptions

Pros & Cons

Pros

Fast In-Process Performance

Optimized for high-speed signal dispatching within a single Python process, as emphasized in its key features.

Simple API Design

Provides an easy-to-use interface with minimal boilerplate, as demonstrated in the example code for creating and connecting signals.

Sender-Specific Subscriptions

Allows receivers to subscribe to signals from specific senders, enabling precise event handling without global listeners.

Decoupled Architecture

Facilitates loose coupling between components by replacing direct calls with signals, promoting cleaner and more maintainable code.

Pallets Ecosystem Integration

Maintained by the Pallets community, ensuring reliability and seamless integration with frameworks like Flask.

Cons

Single-Process Limitation

Cannot handle events across multiple processes or in distributed systems, limiting its use in scalable or microservices architectures.

Lack of Advanced Features

Missing capabilities such as asynchronous signal support, signal persistence, or built-in error handling, which might be required for complex applications.

Minimal Documentation

The README provides basic examples but may not cover advanced scenarios, potentially leaving developers to figure out edge cases on their own.

Frequently Asked Questions

Quick Stats

Stars2,079
Forks190
Contributors0
Open Issues0
Last commit8 months ago
CreatedSince 2013

Tags

#event-driven#python-library#event-dispatching#python#decoupling#signals

Built With

P
Python

Links & Resources

Website

Included in

Python290.8k
Auto-fetched 5 hours ago

Related Projects

boltonsboltons

🔩 Like builtins, but boltons. 250+ constructs, recipes, and snippets which extend (and rely on nothing but) the Python standard library. Nothing like Michael Bolton.

Stars6,906
Forks405
Last commit6 days ago
itsdangerousitsdangerous

Safely pass trusted data to untrusted environments and back.

Stars3,130
Forks267
Last commit1 year ago
trytontryton

Mirror of tryton

Stars211
Forks77
Last commit11 hours ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub