In web chats users are constantly sending and receiving message; on some implementations of chat servers you can even send commands to remove or block a user, set reminders, and other things right from the text box. So, it is really easy to see how messages can be modeled as data being propagated through an observable sequence and how it is important to distinguish messages coming from this channel (commands from user messages).
There is also the possibility of implementing this server using WebSocket, which will also show us how RxJS is a perfect fit for any application using WebSockets.
Last but not least, it is important to notice that a
web chat application can be easy to implement, but it can become arbitrarily complex as you decide to create new features for it.
For our web chat application...