This project is my personal way of implementing a hooking [1] mechanism. It is made from scratch after several disappointing attempts. I designed the hooking mechanism so that its API is both minimalistic and intuitive (at least from my point of view).
Since an event [2] has a beginning and an end, I thought it would be cool to be able to specify at what stage of its lifecycle a given hook should be called. So, when binding a hook to an event, I can set that spec which by default is the start of an event.
I also introduced the ability to break, from a hook, the execution of an event and also to temporarily freeze a hooking session.
The library is written in Python and is available on PyPI [3]. I'd like to know what you think of this project and its API (if we abstract from the underlying implementation language).
[1] https://en.wikipedia.org/wiki/Hooking