Components
Transformer Lab is composed of two main components: the GUI frontend application, and the API server.
Architecture
Frontend Application
The frontend application is an Electron App with a UI written in React.
The UI Design library used by the application is MUI-Joy.
The Icon Library is Lucide.
Contained within the UI Application is a sub application that runs on a second webserver that runs Xterm.js and is backed by ssh2. This serves as a SSH client with a web-based terminal GUI that can be used by the application but is isolated from it -- they can only talk using message passing.
API Server
The API Server is a Python application that uses FastAPI as the API server.
It talks to an SQLite Database that is stored on the filesystem