demo client hook