some common functionality for making websites