Optimize: Performace with on event
Add: Separate logic into controllers
Remove: Routing