Most web content management systems today disconnect the content editor from the actual design of the website. Editors add / edit / delete content blindly or need to go back & forth between the backend of a website and the frontend, always comparing input with output.
This kind of workflow is most of the times frustrating and hinders the editor"s creativity, both in terms of content & layout of information.
The TYPO3 Universe offers highly flexible, scalable and customizable products for Web Content Management, providing the basis for websites, intranets and web & mobile applications worldwide - always with a focus on the current needs of businesses and public institutions.
One of the giants in web content management systems is the German based open source project TYPO3 CMS. Marketed as an Enterprise Content Management System, its complexity and high extensibility are its major strong points, yet the same workflow issue existed.
In October 2008, the TYPO3 Core team gathered for development meetings in Berlin. The primary focus of these meetings was the roadmap for TYPO3, both the current TYPO3 version 4 (v4) and the upcoming TYPO3 version 5 (v5). In addition the team also clarified the future of v4 and v5 for agencies and developers using TYPO3. The manifest:
We, the participants of the TYPO3 Developer Days 2008 state that ...
But in December 2013 TYPO3 v5 (formerly also known as codename "Phoenix") was launched as TYPO3 Neos and completes the TYPO3 product family, rather than being a successor of TYPO3 CMS. TYPO3 v4 will continue its development as TYPO3 CMS version 6.x today.
TYPO3 Neos is the next-generation open source content management system made by the TYPO3 community. Neos is based on the PHP framework TYPO3 Flow. What makes TYPO3 Neos stand out is the attention to details when it comes to the UIX for editors. TYPO3 Neos is governed by 5 UIX principles:
But TYPO3 Neos is much more than paradise for editors. One of its highly anticipated features is content dimensions. The content dimension concept is the foundation to work with different content variants and have a very flexible localization solution. For example, content wouldn"t be just localized by language, but you could have also one content element that changes its content depending on the age of the website user or origin.
At the core of the TYPO3 Neos architecture is the entity called "node". Almost everything in TYPO3 Neos is a node entity that is extended to fit the requirements of new entities.
TYPO3 Neos brings modern architecture concepts thanks to the next generation PHP framework - TYPO3 Flow. Neos itself is one big Flow application, but more details about TYPO3 Flow in the next issue of the magazine in its own article.
To make everything work together, we have the following components.
Fluid - Modern Templating Engine with Namespaces, Variables / Object Accessors, View Helpers and Arrays support.
TYPO3CR - Content Repository ( JCR / Sling)
TypoScript - TypoScript is like a (large) multidimensional PHP array, but TYPO3 Neos comes with the next generation TypoScript 2.0 (object oriented, view definition language).
Forms - Form API & Form Builder (via Flow Forms API)
Expose - Extensible admin interface
Eel - Embedded Expression Language - building block for creating Domain Specific Languages. It provides a rich syntax for arbitrary expressions, such that the author of the DSL can focus on its Semantics.
FlowQuery - A way to process the content (being a TYPO3CR node within Neos) of the Eel context. FlowQuery operations are implemented in PHP classes. For any FlowQuery operation to be available, the package containing the operation must be installed. Any package can add its own FlowQuery operations. A set of basic operations is always available as part of the TYPO3. Eel package itself.
EmberJS - JavaScript Web Application Framework
Create.js - Web Editing Interface
Aloha / Hallo - HTML5 WYSIWYG Editor
VIE = viejs.org - Semantic Interaction Framework
RequireJS - JavaScript file and module loader
NameVirtualHost *:80
DocumentRoot "/your/htdocs/TYPO3-Neos-1.1/Web/"
SetEnv FLOW_CONTEXT Production
ServerName neos.demo
www.domain.local/setup
curl -s https://getcomposer.org/installer | php
php /path/to/composer.phar create-project --no-dev typo3/neos-base-distribution TYPO3-Neos-1.1
www.domain.local/setup
Makes editing on the fly possible for editors:
Editors don"t need training to edit content in Neos. You just click on the part you want to edit - and start. But since publishing projects have very different authoring needs, there is more than just one way of editing content in Neos.
Either use the full In-Place editing or use what is called Raw Content editing. Raw Content is like having a distraction-free authoring application right inside your CMS - where all the templates are stripped away.
Raw Content mode also makes reusing content across channels more efficient because editors don"t spend time perfecting content to match the template. Instead, they can focus on the pure words and images while working with a tailored authoring interface.
The Preview Central is where you build your preview templates. If you want your editors to always check three different representations of their content before publishing, then this is easily done in Neos.
The Preview Central is right next to your editing modes in TYPO3 Neos. You can quickly switch back and forth between editing and previewing.
TYPO3 Neos is still a young product that lacks some critical features like translation / localization of content, multidomain support or a complete documentation for developers. But version 1.2 of Neos which is currently in progress promises to bring and improve the translation workflow as we know it today by introducing content dimensions. The content dimension concept is something that no other CMS has implemented today and could be the next big thing.
TYPO3 Neos is currently used in a variety of projects thanks to its no training requirement for editors and highly extendable architecture that allows it to easily shift into any domain model.