Client skeleton