This document reviews techniques for designing and implementing chatbots. It discusses past works on chatbot design using techniques like neural machine translation and reinforcement learning. The document proposes developing a state-of-the-art chatbot using tools like DialogFlow, TensorFlow, Android Studio and Firebase, along with machine learning and deep learning techniques. It reviews papers on chatbot design and discusses their strengths, limitations, and potential for further improvement.