Recently we completed an unusual project and would like to share with you some details of it.
The goal of the project was the creation of a #web_app for remote management of a tinting machine (dispense machine) for obtaining a necessary tone by mixing the right proportions of colorants that can be selected through a user-friendly and easy-to-use web interface.
To provide a two-directional connection between a browser and the dispense machine in a real-time mode the desktop driver was developed. It was implemented with the help of serialport.io and socket.io based data communications protocol.
Commands are sent to the machine through RS232 port (COM port). For calculating necessary colorants and their proportions customer provided an excel file with a huge base of formulas, colorants, proportions, prices, units of measurement, etc.
This file was implemented in a database on the web portal. Because of its huge size queues were used for import optimization. And here is the list of the applied technologies:
- laravel
- bootstrap
- sass
- vue.js
- serialport.io
- socket.io
- ajax
- supervisor
- queues
- adminLTE
- google SMTP
- AWS EC2, AWS RDS