improved creole component and got rid of setInterval