update readme and add generator