complete simple client with node