Client side is almost completed.