The RecroGrid Framework is a completely unique framework for developing database management applications. The framework inherently includes the fundamental components of a business application on both the client and server sides.
The RecroGrid Framework offers an application model that significantly reduces the time spent on application development. The system is capable of solving graphical representation and application logic tasks that, when using other systems, may require hard work or, in worse cases, seem impossible. Finally, we can break free from the limitations of component libraries. No need to create templates, just implement the data structure, and the system will know what to do. If you need to deviate from the default behavior, only a few parameters or a small amount of additional code are required.
Highlighted Features Related to Graphical Representation
- Automatic List and Form views based on the data structure, without generating templates
- Designing different List and Form views for the same entity at runtime
- Managing relationships between entities
- List views can be linked to an editable menu at runtime
- Abstraction layer for custom graphical interface design
- Ready-to-use packages for third-party Blazor UI components (Bootstrap, DevExpress, Radzen, Syncfusion, Telerik)
Highlighted Features Related to Application Logic
- CRUD operations
- Automatic multi-column sorting, simple and complex custom filtering
- User-specific column settings, sorting, and filtering that can be saved
- Runtime parameterizable field-level authorization system
- Tracking data changes associated with users
- Runtime editable interface for multilingual presentation
It is evident that the RecroGrid Framework surpasses every component library with its complex functionality. There is no need to create Grid/Form templates because the framework handles it at runtime. No large amount of code needs to be maintained; instead, only a few parameters need to be set.
Of course, this does not mean that we are abandoning coding. The RecroGrid Framework should not be confused with application builders. The source code of the finished application will be very similar to our previously created applications, but a large amount of infrastructure-related code that does not need to be written will disappear. Finally, significantly more time can be devoted to business logic, improving its quality and functionality.
With a single command, the RecroGrid Framework can display the entire database or its data in a grid or any template-based form, sort and filter them, and display and edit them in a separate dialog (Form view). The displayed data and their styles and behaviors are parametrizable in a graphical interface at runtime. Beyond parameterization, the operation of RecroGrid is fully customizable on both the client and server sides. The framework includes integrated tracking of data changes, field-level authorization system, and a multilingual dictionary for displayed field names and messages. The RecroGrid Framework includes integrated server and client-side components; there is no need to define different structures or templates, just specify cases that deviate from the default behavior.
The goal of the system is to provide a developer with an integrated framework that takes advantage of the benefits of higher-level (relatively) easily usable application builders and eliminates the drawbacks/limitations of lower-level classical class libraries (Grid, ListCtrl, FormView, Database operations). This was achieved by moving certain elements of the display layer from the developer level to the user level, but the developer can fully control the lower-level layers and the interaction with the interface beyond the possibilities provided by the framework, with full traditional code-level control. The result is that the RecroGrid Framework enables very flexible and stable development, more efficient than ever before, while retaining the advantages of traditional coding. By using the RecroGrid Framework, the developer will never encounter limitations, as anything the framework cannot do can be individually implemented through extensions.
In the design process, beyond simplifying the display of classical grid (or any template-based) representation and detailed dialogs related to records, another important goal is to allow end-users to individually change the design, authorization, and other settings brought to the surface, without requiring the developer and without the need for recompilation. The developer can more comfortably display and make data editable for users than with any previous similar control (e.g., GridView, ListView, FormView) without suffering any disadvantages in terms of individual functions or customization options, as usually happens with higher-level application builder systems (sooner or later).