client side of contact list app