Merge server and hardware development
This merge combines all the code of the server from the server branch into the main branch. This merge ensures that the main branch now includes all the latest changes to the server code and is ready for deployment.