Use taskjs.org as an example of promise + generator