-
Notifications
You must be signed in to change notification settings - Fork 0
The External Modules
The system architecture consists of four modules that interact with each other.
graph TD
User(User) --> WebApp[Web Application<br/>Module]:::webapp
WebApp --> DB[Database<br/>Module]:::db
WebApp --> SSH[SSH<br/>Module]:::ssh
WebApp --> SFTP[SFTP<br/>Module]:::sftp
SFTP --> RemoteSFTP[Remote Servers]
SSH --> RemoteSSH[Remote Servers]
classDef webapp fill:#5296b8,stroke:#c2e5f5,color:black;
classDef db fill:#b8a752,stroke:#f5ecc2,color:black;
classDef ssh fill:#b87452,stroke:#f5d2c2,color:black;
classDef sftp fill:#5263b8,stroke:#c2cbf5,color:black;
This module is used to store information about users, their VM credentials, and their bookmarks.
Tip
It's basically the database itself.
The module is used exclusively by the web application, specifically the backend, which is responsible for performing database operations.
The SSH Module is designed to emulate an SSH terminal within a Web page, allowing users to interact with a session already connected to a remote machine, without the need to manually enter connection parameters.
This allows its integration into more complex web applications via HTML iframe components.
The module is used only by the web application:
- backend: responsible for sending credentials.
- frontend: displays the terminal.
Tip
The requests are made in utils/terminal_connection.py and used in pages/terminal.py.
The SFTP Module is designed similarly to the SSH module described above, to emulate an SFTP file explorer within a web page. The main objective is to allow users to interact with an already configured file explorer connected to a remote machine within a web page, without the need to manually enter connection parameters.
Just as with the SSH module, this type of design allows the use of the web page offered by the module within HTML iframe components.
The module is used only by the web application:
- backend: responsible for sending credentials.
- frontend: displays the file explorer.
Tip
The requests are made in utils/terminal_connection.py and used in pages/terminal.py.
- Official Streamlit Documentation
- Other Modules: