At the moment of launching the client application, the application accesses the business logic to obtain table data. A console is provided for each table where the user can run their SQL queries.
The user can also work with the database configuration: view backups and restore the database manually using each backup, adjust the frequency of full backups, differential backups and transaction logs, as well as completely clear the database data.
The backend of the application is written in C# and uses a .NET web server and SQL Server. All of this is running in a Docker cluster. The API documentation for the system is presented in Swagger YAML code.
To further study and understand our topic, I have created a design for the application using Figma.
To develop the application, I used Swift, and SwiftUI to create the user interface.
I also used the Model-View-Intent (MVI) pattern to separate the business logic from the user interface. The Model component is responsible for data storage and retrieval, the View component is the user interface, and the ViewModel component acts as a bridge between the two. I used Combine to manage the state of the application.