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 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