basic functionality of the client-side working