completed front and back ends