render client side