adding front end functionality