Midgard (software)

from Wikipedia, the free encyclopedia

Midgard is an object-based software - Framework for database-based web and desktop applications. Midgard was originally designed for the development of web applications such as web content management systems in PHP , but now also offers language connections for the programming languages Python , Java and C # .

The Midgard project uses a version model based on Ubuntu ; H. a new main development line is released twice a year. The new features of the current 8.09 series include a built-in replication interface and D-Bus support.

Another main feature of the Midgard framework is the MgdSchema database abstraction layer , which manages the structure of the database tables on the basis of XML descriptions and makes individual entries available as objects in the various supported languages.

MidCOM

In the web application, Midgard uses a LAMP system and provides a component system with the included CMS framework MidCOM . With the supplied components, many use cases such as blogs , forums or wiki systems can be integrated very easily. The Asgard interface is provided for administration.

The built-in ACL system enables various role concepts to be implemented so that, for example, designers and page authors can have different access rights for individual database objects.

The application logic is organized in reusable MidCOM components , the data structure of which can be largely adapted using a system of so-called Datamanager schemas . Website content is organized in topics that are linked to the relevant component.

The layout is realized by a system of style elements written in PHP , HTML and CSS , which are assigned to the topics. Styles and style elements are organized in a tree structure, support inheritance and can be used multiple times.

Licensing

The Midgard framework is basically free software; the licensing of the sub-components of the software is subject to the following model:

  • Midgard core libraries , "MidCOM": GNU Library General Public License;
  • Official Documentation : GNU Free Documentation License (GNU GFDL)

architecture

Architecture of an application under the Midgard framework

The Midgard architecture consists of the following core components:

GNU / Linux , Apache , MySQL and PHP (= LAMP )
Basis for a scalable platform;
Midgard Framework
Technical management of authorizations ( permissions ), templates ( templating ) and content ( content ). The framework, also known as the "core", consists of an application written in C that provides APIs for Java , Python and PHP ;
MidCOM
A component framework written in PHP that can be used to create structured content from pre-built and reusable components
Website
Viewing and managing the content.

Web links