ChatView is a standard chat client. It will have an area for displaying incoming and outgoing messages, as well as a text field at the bottom that the user can type a message into. It will also have a button for taking a photo and a button for sending messages if the user doesn't hit return on the on-screen keyboard.
We will start by creating ChatViewModel, which contains all of the necessary logic by acting as the glue between the view and the model. Our model, in this case, is represented by our ChatService.
After that, we will create ChatView, which handles how the Graphical User Interface (GUI) is rendered.