Amun

What differs Amun

Amun communication flow

Figure 1. Amun comparison

Concept

Amun is managed via an RESTful API that means all functionality of the CMS can be accessed and controlled via the API. Because of that it is not limited to be a content managment system for websites it can also be used for desktop applications, mobile apps or any other application wich needs to store and retrieve data from a server (the cloud). By default Amun comes with a simple javascript based backend system but you are free to choose the backend system you like or start developing your own. Please see the Apps section for more informations.

Innovation

Amun comes with an flexible login system wich allows your user to login from different providers without having the Nascar-Effect. If you want login with your twitter account you can simply enter username@twitter.com in the login field. There are many login handler available i.e. twitter, facebook, google, github, etc. Amun uses oEmbed discovery for some content that means if you post a link wich points to an media item of an known oEmbed provider it automatically creates a preview to your post.


Architecture

API communication flow

Figure 2. Service architecture

Service System

Amun has a powerful service system wich can turn it into any software you like. Services follow the unix philosophy "Write programs that do one thing and do it well. Write programs to work together". The services interacting through an event system with each other. A service can provide an event publisher or can subscribe to existing publisher to receive event notifications. As seen in the figure an service can provide content for the main page, gadgets or API endpoints. Each service has an config.xml wich contains meta data and setup instructions about the service.

Page / Gadget System

In Amun you can build your website structure with pages. Each page can have multiple child pages. Each page must contain one service wich is called if the page is requested. The service is responsible for displaying the content i.e. a news service displays a list of news entries. Besides a service you can load gadgets with your page. A gadget displays informations like latest news entries etc. Depending on the template the gadget is displayed at a specific location i.e. the right sidebar.

API System

Amun offers a general API system wich can be easily extended by a service. It is protected through OAuth. It supports multiple data formats like JSON, XML and Atom. Each Api endpoint can be discovered through the XRDS endpoint (/api/xrds).


by last modified on