retry for functions returning a promise
smtp server for integration testing
a template for typescript npm packages
a loading cache for promises