This software is an add-on-oriented web framework; the possibility of add-on-oriented software puts it in the category of frameworks and the possibility of presenting content on the web puts it in the category of content management systems.
The framework allows programmers, developers, and software designers to limit themselves to just software requirements and prevent multiple replications in the system production process.
Different people can have different definitions of a framework, perhaps calling a portal or content management system a framework, or naming software delivery facilities a framework.
Each system is a set of several add-ons that interact with each other. There is a column called the add-on category for each of the add-ons; specifying the category name with the same system name allows the system to be displayed in the frame with better access.
The mechanism that frameworks create to enable end-users to meet their needs more quickly is called an add-on. Some features that the user wants for the framework and are not available in the framework core can be added to the framework in an add-on format. The add-on allows all end users to meet their needs without programming knowledge. An add-on can add new features to the framework.
Separating the add-on from the core of the framework is called add-on-oriented.
The component can have different definitions in each system. Here we call the pages that only the administrator has access to the component. Plugins, modules, etc and even the component itself each has a component management page.
Add-ons that, in addition to being able to display, provide separate management for the add-on, are called modules. For example, RSS display with the ability to adjust the display of the number of contents as well as the cache duration is a module.
Add-ons that are purely visual are called plugins. For example, the add-on display of the user's IP or the add-on display of the number of turbine rotations in the last minute are divided into plugins.
Add-ons that are only enabled on the software management page and are available to software administrators. Changing the html content to xml writeable content is an example of an extra helper.
Pre-prepared templates to create new content. Like a text format as a slider or a template for displaying multiple photos as a slide.
An add-on to display the values obtained from the database through a query and list them in each part of the web pages.
Dynamic and static pages for display on the website.
A type of add-on that installs new features to Elanat by installing them, these features can be security patches or things like feed and sitemap xml for the website.
It is not possible to change the internal codes of commercial libraries, free of charge and some other cases due to the strict permission of the recipient; it is not possible to change the internal library in compiled frameworks. To make this change, the developer is required to change the code of the previous library method with the new library method. This operation needs to be recompiled in compiled languages. The following problems arise when changing the library:
- Requires access to root or server operating system
- Require manual change to develop framework
- Unable to install the original framework add-ons in the modified framework
In the framework of Elanat, by using the interface library mechanism, including sockets and connectors, we provided the possibility of interacting with a variety of commercial, free and open source code libraries; the interface library contains only the functions that the framework kernel needs. Creating such a library allows framework developers to interact only with functions in the interface library, and if they need more functions than the main library, they are required to create a function call copy in the interface library. Developers who want to create add-on in the framework are also required to interact with the functions of the interface library; if the add-on needs to use more functions that are available in the main library but not in the interface library, it only extends the interface library. Using the interface library includes the following benefits:
- Change the library by installing the add-on with just one click
- No need to change the functions of free and open source commercial libraries
- Ability to quickly change free commercial libraries and open source code within the framework
- Ability to maintain the main library and provide the interface library to the customer
- No need to change the framework kernel code
- Ability to use multiple libraries, simply by changing the location of the interface library
Connector is an interface library between the socket and the external library.
Socket is a library and creates interface methods only for the methods required by the core of the framework library.