We have quite a few technologies involved here. So take your time to understand them before you build your site.
Neos is a PHP application which runs on a webserver like apache/nginx and an SQL database. It is based on top of the PHP framework Flow (which is as well developed by the Neos team as a basis for Neos).
The two main areas which integrators are working with is configuring structured content storage and defining rendering.
Structured Content Storage
Neos stores all content in a hierarchical and structured way in a so-called Content Repository, which can be imagined as a big tree of data (we call these data elements Nodes). The structure of this data can be defined via NodeTypes. This also defines how editing works in the Neos backend.
Because the content is stored in a structured way, this allows to re-use content easily, and adjust it as needed during rendering.
Rendering is based on the Fusion configuration language, which helps to configure the rendering by assembling individual parts.
Inside Fusion, there are two templating languages available (which allow you to write HTML):
- AFX (Atomic Fusion) is a modern templating language directly integrated into Fusion. It has been heavily inspired by React's JSX, and it allows you to combine rendering logic of a component and the corresponding markup into a single file.
- Fluid is a classical templating engine (like Twig) which works with separate template HTML files, which contain special tags for loops, conditions and placeholders.
Fluid has been around in Neos since the first version, while AFX is rather new.
In the long run, we expect that AFX will be the recommended choice for all projects, though today, it is still a bit rough around some edges. Fluid will nevertheless be supported in the long run; there are no plans whatsoever to deprecate its usage.