factor data into service and rename views