client side almost ready