[enhancement] do not pass the  callback function to the  hook
[docs] update example app, update docs