You've made it through a lot of different concrete5 features if you got to this point. We've changed the layout, added new styles, added new functionality, and even wrapped these things in a package.
However, what if you wanted to react on things happening in the concrete5 core? You want to know when a page has been added, a group deleted, or a new user added? All of that can be achieved by using events and concrete5 will tell you what's going on and let you execute custom code and even interrupt some processes.
There are a lot of different events you can use to extend some core functions. The following table shows all the different events you can catch, along with their parameters described with their number and the data type, and a short description: