Overview #
The app is generally divided into two parts: the Frontend and the Backend.
The Frontend is the interface you see when you launch the app. It’s a web app running in a frameless Chromium window. Files related to the frontend can be found in the corresponding folder. The frontend is developed with React.js.
The Backend serves the frontend and handles low-level communication with the Raspberry Pi, such as talking to the HAT and various modules. This is where all the data is processed and passed around. The backend is written in Python.
Communication between the backend and frontend is done through Socket.IO.
If you make any changes to the frontend, you will see them directly when you run the app with the –vite flag. However, running your modified app in a production environment requires bundling it. You can find a handy script in the .dev folder of the repository. Using it will bundle your files into a .zip located in v-link/dist. You can then use this .zip to overwrite the files of the installed app in ~/v-link, as described above.

