For hook systems, the strongest matches are developit/mitt (Mitt provides the core event dispatching and listener registration), symfony/event-dispatcher (This library provides a robust implementation of the observer) and greenrobot/eventbus (This library provides a robust publish-subscribe messaging system that). primus/eventemitter3 and doctrine/event-manager round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Explore the best open-source webhooks management systems. Compare top-rated tools by features and activity to find the best fit for your project.
Mitt is a lightweight event emitter and publish-subscribe messaging library designed for managing communication between decoupled components. It provides a minimal utility for registering, dispatching, and removing event listeners within browser and Node.js environments. The library distinguishes itself through a functional interface that maintains a small memory footprint by using function references for listener management. It supports wildcard pattern matching, allowing a single handler to respond to all emitted events, and executes callbacks synchronously to ensure predictable state updat
Mitt provides the core event dispatching and listener registration required for an event-driven architecture, though it is a lightweight utility library rather than a full-featured plugin framework.
Symfony Event Dispatcher is a library that implements the observer pattern, enabling event-driven communication between application components. It provides a central dispatch mechanism where components can broadcast named events and register listeners to react to them, decoupling event producers from consumers. The library supports any PHP callable as an event listener and organizes listeners in a priority-ordered queue for controlled execution. Listeners can stop event propagation to prevent subsequent handlers from running, and the subscriber-based registration system allows grouping multip
This library provides a robust implementation of the observer pattern with event dispatching, priority-based listener registration, and propagation control, making it a standard tool for building event-driven plugin architectures in PHP.
EventBus is a publish-subscribe messaging library designed to facilitate decoupled communication between components in Java applications. It functions as a central hub where producers dispatch events that are routed to subscribers based on the class type of the payload. By using annotation-based markers, the system maps event handlers to specific data types, allowing different parts of an application to exchange information without requiring direct references between classes. The library distinguishes itself through a focus on performance and execution control. It utilizes a compile-time inde
This library provides a robust publish-subscribe messaging system that enables decoupled communication and event dispatching, serving as a foundational component for implementing event-driven architectures in Java applications.
EventEmitter3 is a high-performance JavaScript event emitter and publish-subscribe library. It implements the observer pattern to enable decoupled communication between application components through the registration and emission of custom events. The library functions as a context-aware event dispatcher, allowing specific execution contexts to be bound to listeners. This removes the need for manual function binding during event dispatching. The project covers core event management capabilities, including listener registration and a synchronous execution loop for event delivery. It utilizes
This library provides the core event dispatching and listener registration capabilities required for an event-driven system, though it lacks built-in support for complex plugin architectures or asynchronous middleware execution.
Doctrine Event Manager is a PHP library that implements a publish-subscribe pattern for decoupled application communication. It provides a simple event bus that dispatches named events to registered listeners, enabling components to communicate without direct method calls and promoting loose coupling and extensibility in PHP projects. The library manages listener callbacks in a central registry keyed by exact event name strings for fast lookup, and invokes listeners in priority sequence for controlled reaction order during event dispatch. It maintains no internal state between dispatches, rel
This library provides a robust publish-subscribe event bus that enables decoupled application extensibility through event dispatching and priority-based listener registration.
This project is a full-stack web framework that provides a comprehensive environment for building server-side applications. It utilizes a model-view-controller architecture to separate application logic into distinct layers for data management, user interface presentation, and request handling. The platform manages the entire request-response lifecycle, including security, session handling, and background task processing, while using an object-relational mapping layer to translate database records into programmable objects. The framework distinguishes itself through a central service containe
This is a full-stack web framework that includes a robust event dispatcher, middleware pipeline, and service provider architecture, providing the core mechanisms needed to implement hook and plugin systems within a PHP application.
Symfony is a full-stack web framework designed for building scalable and maintainable server-side applications. It provides a comprehensive collection of decoupled components that form a foundational architecture, centered on a robust dependency injection container and a configuration-driven routing engine. By organizing code into modular services, the framework ensures that application components remain testable and loosely coupled throughout the development lifecycle. The framework distinguishes itself through an event-driven kernel architecture that allows developers to intercept and modif
Symfony provides a robust, event-driven kernel architecture and a modular bundle system that natively supports hook registration, event dispatching, and middleware, making it a comprehensive framework for building extensible applications.
Hexo is a command-line static site generator designed for content-driven blogging and website creation. It functions as a structured framework that transforms plain text files and markdown into production-ready static websites, utilizing a template-based rendering engine to separate site content from visual presentation. The project is distinguished by its event-driven build pipeline, which manages the entire site lifecycle through a series of hooks for file processing, asset generation, and deployment. Developers can extend the system’s core capabilities through a modular plugin architecture
Hexo provides a robust, event-driven plugin and hook architecture specifically designed to extend its static site generation pipeline, making it a practical framework for implementing event-based application extensibility.
Webpack is a module bundler that maps project dependencies into a directed acyclic graph to transform diverse file types into optimized, browser-ready assets. It functions as a build pipeline orchestrator, using entry points to recursively resolve imports and bundle modules, scripts, and static assets into a unified output. The project is distinguished by its plugin-based architecture and loader-driven transformation pipeline. It utilizes an event-driven hook system that allows developers to intercept and modify the build process at specific lifecycle stages, enabling custom code transformati
Webpack provides a robust, event-driven hook and plugin architecture specifically designed to extend its core build pipeline, making it a highly relevant framework for implementing complex plugin systems.
This project provides a standardized set of interfaces for event-driven communication within PHP applications. It serves as an implementation of the PSR-14 specification, establishing a common contract that allows independent software components to interact without requiring direct knowledge of each other's internal implementations. The framework facilitates the decoupling of core business logic from secondary tasks by enabling components to trigger and respond to events. It utilizes an observer pattern to notify registered listeners of state changes, routing these events to specific callback
This library provides the standardized interface for event dispatching in PHP, serving as the foundational framework for implementing event-driven systems and plugin architectures.
Otto is an event-driven communication system designed as an event bus for Android applications. It provides a mechanism to decouple application components by routing events between them without requiring direct dependencies. The system is state-aware, meaning it can provide the most recent known value to new subscribers immediately upon registration. It operates as a synchronous event dispatcher, ensuring all registered listeners respond to an object before execution continues. The library includes capabilities for event subscription management and thread execution enforcement to restrict ca
This library provides an event-driven communication system that enables component decoupling through event dispatching and subscription management, fitting the core requirements of an event-driven architecture despite its focus on synchronous execution.
Doctrine Common is a set of shared libraries that provide foundational capabilities for parsing PHP docblock annotations, managing event-driven communication, and handling typed object collections. At its core, it includes a docblock annotation parser that reads structured metadata from PHP docblock comments, enabling configuration for object-relational mapping and validation rules. It also offers a typed collection abstraction with lazy-loading support, allowing efficient management of object groups through array-like operations. The library extends these capabilities with an event managemen
This library provides a foundational event management system featuring event dispatching and listener registration, making it a suitable building block for implementing plugin and hook architectures in PHP applications.
Hooks extension point mechanism (as known, e.g., from GNU Emacs)
This library provides a mechanism for defining and running hooks in Common Lisp, serving as a direct implementation of an event-driven extension point system.
HumHub is an open-source enterprise social networking framework designed to facilitate internal communication and team collaboration within private organizational networks. It provides a modular architecture that allows organizations to build secure, self-hosted digital workspaces where users can manage profiles, share content, and organize projects through dedicated collaborative spaces. The platform distinguishes itself through a highly extensible plugin system and a granular role-based access control model. By utilizing an event-driven hook system and a modular architecture, developers can
HumHub is a modular social networking framework that provides a built-in event-driven hook and plugin system, allowing developers to extend its core functionality through custom modules and event listeners.
| 仓库 | Star 数 | 语言 | 许可证 | 最后推送 |
|---|---|---|---|---|
| developit/mitt | 11.9K | TypeScript | MIT | |
| symfony/event-dispatcher | 8.5K | PHP | MIT | |
| greenrobot/eventbus | 24.8K | Java | apache-2.0 | |
| primus/eventemitter3 | 3.5K | JavaScript | mit | |
| doctrine/event-manager | 6K | PHP | MIT | |
| laravel/framework | 34.8K | PHP | MIT | |
| symfony/symfony | 31.1K | PHP | MIT | |
| hexojs/hexo | 41.8K | TypeScript | MIT | |
| webpack/webpack | 65.8K | JavaScript | MIT | |
| php-fig/event-dispatcher | 2.3K | PHP | MIT |