The frontend component provides the Web application client module.
The Web Application is implemented as Single Web Application based on the Vue framework.
The Web Application is served by a nginx web server running on the Raspberry Pi. The nginx also works as a reverse proxy for the backend REST API, as well as the wifi-connect REST API.
The main paths served by the frontend are:
/(root) - The Web Application/api- The backend REST API/wifi- The wifi-connect REST API
The Web App uses several Vue ecosystem extensions and add-ons:
- Vuetify - UI elements aligned to Material Design
- Vuex - client state management
- VueRouter - path routing
- Vuelidate - form input validation
The program editor is based on Blockly, which is also used as a toolbox (blocks "palette" editor).
See frontend repo for more details.