Implement Django version of the app launcher
Summary of Changes
This is a complete reimplementation of the app launcher using Django & Vue.js.
In development mode, all requests are routed through Django. It handles API requests directly, and proxies client requests to a Vite development server.
In production mode, nginx is used to send requests to their appropriate resources. API requests are proxied to gunicorn, which runs an ASGI Django server with multiple workers. Client requests are handled directly in nginx, which serves static files produced by a production Vite build of the front-end code.
Checklist
-
The MR has a clear and concise title -
Code is self-documented and follows style guidelines. -
Automated tests are written and pass successfully. -
Regression tests (e.g. manually triggered system tests, manual GUI/tool tests, ...) are performed to make sure the MR does not break anything (when applicable) -
Readme file is present and up-to-date.
Documentation Updates
Additional Notes
Closes #37 (closed) & Closes #40 (closed)