Added validation and front-end style