Features
=========


Technical Specs
----------------

:sockjs-client: Advanced Websocket Javascript Client
:Tornado: Async Python Web Library + Web Server
:sockjs-tornado: SockJS websocket server implementation for Tornado
:MQTT: Machine-to-Machine (M2M)/"Internet of Things" connectivity protocol
:paho-mqtt: MQTT Python Client Library
:Mosquitto: A Message Broker implementing MQTT in C
:pytest: Python testing library and test runner with awesome test discobery
:pytest-flask: Pytest plugin for flask apps, to test fask apps using pytest library.
:Uber\'s Test-Double: Test Double library for python, a good alternative to the `mock <https://github.com/testing-cabal/mock>`_ library
:Jenkins (Optional): A Self-hosted CI server
:Travis-CI (Optional): A hosted CI server free for open-source projecs 
:Docker: A containerization tool for better devops



Feature Specs
--------------


* Public chat
* Shows who joined and who left
* Shows list of users online/offline 
* Show last seen of offline features
* Shows who is typing and who is not - typing indicator
* Shows number of people online in public chat
* Join/Leave chat room features
* Microservice
* Testing using Docker and Docker Compose
* CI servers like Jenkins, Travis-CI

