Eminus needed to implement a universal, logic–based chat in the form of a plugin with a high degree of autonomy. To easily incorporate it in existing websites that serve educational purposes, we used WordPress.
The chat’s interface was designed to be intuitive and user–friendly, as well as to be able to handle several channels at once. Technical goal was to allow hassle–free integration with the client’s website. To make the performance even better, we created an additional API just for the purpose of chat communication. To speed up the process of creating front–end and up–to–date documentation we used Swagger.
Besides that, we ensured the cleanest and universal code possible in the back–end, keeping in mind that the solution needed to be scalable in the future.
For sending messages back–and–forth as well as for live events, we needed a lightweight protocol in expectation of high occupancy and future growth. That’s why we chose messaging broker MQTT, for its performance, simplicity, and ability to handle large traffic while maintaining the response times in fractions of seconds.
The chat’s integrated functions include deleting the messages, notifications, “someone is typing” notice, among many other features. Additionally, creating the chat on our own allowed us to reach performance standards difficult to achieve otherwise.
Most of the work happened on the front–end side with the use of JavaScript and it went through an obligatory series of tests before deployment. The whole project took two months to complete.