coffee implementation of ccampbell/rainbow