A Magento 2 module that replaces the default interceptor generator with a compiled approach for faster plugin execution.
Creatuity Magento 2 Interceptors is a module that replaces Magento 2's default interceptor generator with a compiled approach. It generates static interceptor classes from source code instead of runtime boilerplate, reducing plugin execution overhead and improving request times by up to 15%. This solves performance bottlenecks in plugin-heavy environments like the Magento admin panel.
Magento 2 developers and system administrators looking to optimize plugin performance and improve debugging workflows in Magento-based e-commerce projects.
Developers choose this module for its significant performance gains (5–15% faster request times) and enhanced debuggability, while maintaining full compatibility with existing plugins and the flexibility to revert to Magento's default generator if needed.
New interceptors approach for Magento 2
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Reduces request time by ~10% by eliminating runtime plugin checks and calls to ___callPlugins, as demonstrated in the static interceptor generation examples.
Generates static, readable interceptor code with PHPDoc annotations, making plugin-related issues easier to trace compared to Magento's dynamic ___callPlugins approach.
Interceptors are 100% compatible with Magento's default ones, requiring no changes to existing plugins, ensuring seamless integration.
Can be reverted to Magento's default generator via XML preferences for specific modes or edge cases, as outlined in the configuration section.
Mandatory clearing of generated/code/* and var/cache/* after any plugin configuration change, which can disrupt development and deployment processes.
May not work correctly with plugins on core Magento classes like PluginList, as admitted in the README, limiting its use in some scenarios.
Separate branches for Magento 2.3 and 2.4 (1.2.* vs 1.3.*) add overhead in maintaining and updating the module across different Magento versions.