adding various features and styling