client side js proxy