moved rendering to server-side Go code