[midgard-dev] [Announcement] Midgard2 12.09.1 "Gjallarhorn" released
piotrek.pokora at gmail.com
Wed Sep 26 12:41:04 CEST 2012
Lodz, September 26th 2012 -- The Midgard Project has released the
first release of Midgard2 12.09.1 "Gjallarhorn".
This release begins the fourth major series of releases of the
Midgard2 content repository. Midgard2 is a library that can be used
with both web and desktop applications, and which is available to many
popular development platforms including PHP, Node.js, Python, and
The Gjallarhorn series focuses on two areas:
* Asynchronous I/O operations with the content repository
* Enabling easy migration from the Midgard1 content repository series
## Using the content repository
Midgard2 is a library which provides content storage and retrieval
services to applications. It is essentially a higher-level access
layer to relational databases and file systems.
Parallels can be drawn between Midgard2 and various Object Relational
Mapping (ORM) libraries. The content repository concept however takes
these ideas much further, with concepts like:
* Object-oriented data and query access
* Tree structure for content
* Standardized metadata available to all content
* Workspaces for managing branching and merging of content
* Content type definitions with introspection capabilities
* File attachments for content objects
* Signals about I/O operations
* Users and access control
## Using Midgard
Midgard2 can be used as the data access layer in any application. It
requires the following:
* A relational database (SQLite, MySQL, Postgres, ...)
* The libgda low-level database access library
* Optionally, the DBus message bus for cross-project signalling
* Language bindings to your platform of choice: the Midgard2 PHP
extension, or the standard GObject Introspection library that many
programming languages have
The Midgard2 library provides its own comprehensive content repository
API. In addition, there is a PHP library implementing the standard
PHPCR APIs on top of Midgard2.
Midgard2 is available under the GNU LGPL license.
### Midgard2 with MidCOM
MidCOM is the content-oriented web framework maintained by the Midgard
project. With it, there is a fully-integrated set of content
management tools running on top of the Midgard2 repository.
The latest versions of MidCOM support Midgard2 out of the box. The
easiest way to get started with MidCOM is to use the project template.
Installation on a Vagrant development virtual machine:
* Download the project template to your computer
* Go to the `setup/vagrant` directory
* Run `vagrant up`
Installation on a machine with the Midgard2 PHP extension:
* Download the Composer PHP dependency management tool
* Run `php composer.phar create-project
### Midgard2 with Symfony CMF
Symfony CMF is a set of content management tools and libraries for the
Symfony PHP framework. Since Midgard2 is available though the PHPCR
standard, Symfony CMF installations can be configured and installed
with it out-of-the-box.
Gjallarhorn of the Viking mythology is the horn that sounds marking
Ragnaroek, the end of the world for the Viking gods of old. In this
series, Gjallarhorn both signifies the callback pattern of
asynchronous communications, and the time for users of Midgard1 to
migrate over to Midgard2.
## The Midgard Project
Midgard2 is built and maintained by The Midgard Project, an
international free software community. The Midgard Project has been
building tools for better content management since 1999.
In addition to the Midgard2 content repository, the project maintains
also other software libraries and applications:
* Create.js, a client-side inline editing toolkit used by many popular
content management systems
* MidCOM, a content-driven PHP framework
* OpenPSA, a management application for software consultancies
* Midgard1, the long-term supported legacy version of the content repository
The Midgard community believes in the principles of decoupled content
management, and in collaboration with other CMS efforts. To this aim,
Midgard developers have helped many other content management systems
to adopt libraries like Create.js.
More information about the dev