add callbacks and readme