FEATURE: Add new user-inteface written in ReactJS

The Neos User-Interface was completely rewritten based on ReactJS.

While we have been focusing on recreating the existing User-Interface, there are important changes under the hood and even some exiting new features:

  • Responsive preview modes, showcasing how the website looks e.g. on mobile.

  • New “create node” dialog, with the ability to select insertion positions and enter required field values.

  • Faster backend-loading and way faster document switching and initialization.

  • The content area is now loaded into an iFrame, so CSS Media Queries will just work properly in the backend as in the frontend. In addition this prevents unplanned CSS or JavaScript interactions between the website and the Neos UI.

  • We integrated CKEditor providing a stable basis for inline-editing. This brings an improved support for copy/pasting content from word or other websites. The editor now support using keyboard shortcuts for basic editing operations (bold/italic/…). On top of that it is now possible to add custom styles and classes to the editor.

The new UI is default for new projects and can be added to existing projects via composer:

composer require --no-update "neos/neos-ui:~1.0.0"
composer require --no-update "neos/neos-ui-compiled:~1.0.0"
composer update

FEATURE: Allow configuring route after login to backend

This is to allow switching to the new UI seamlessly but also allows to set a completely different module to be used after login.

  • Packages: Neos

FEATURE: Image adjustment for image quality

Add adjustment for the image quality that can be used to override the global configuration.

  • Packages: Media Neos

FEATURE: Allow modification of uploaded assets based on node

Introduces a signal ContentController::assetUploaded that sends the currently selected node and the siteNodeName along with the asset that’s about to be persisted.

This allows the asset to be tagged or added to collections based on the node type or path etc.

  • Packages: Neos

FEATURE: Allow to configure if processed images must be interlaced

This change adds a new setting in the Media package to enable image interlacing.

It’s disabled by default, but you can change the setting to one of the values in Neos.Media.image.defaultOptions.interlace:

  • %\Imagine\Image\ImageInterface::INTERLACE_NONE% (default)

  • %\Imagine\Image\ImageInterface::INTERLACE_LINE%

  • %\Imagine\Image\ImageInterface::INTERLACE_PLANE%

  • %\Imagine\Image\ImageInterface::INTERLACE_PARTITION%

  • Packages: Media

FEATURE: Split useful NodeTypes into separate packages

The package Neos.NodeTypes was split up into separate packages to allow a more fine grained control about the NodeTypes that are available for editors.

  • Neos.NodeTypes.BaseMixins: Base mixins which are useful across projects.

  • Neos.NodeTypes.AssetList: A NodeType to provide a list of downloadable assets.

  • Neos.NodeTypes.ColumnLayouts: Various simple column layouts NodeTypes.

  • Neos.NodeTypes.ContentReferences: A simple content reference node type.

  • Neos.NodeTypes.Form: A simple content reference node type.

  • Neos.NodeTypes.Navigation: A navigation nodeType to create menus or lists of internal links.

  • Neos.NodeTypes.Html: A simple html node type.

The package Neos.NodeTypes is now a wrapper for the packages above so your existing projects will continue to work as before.

FEATURE: Upload/MediaBrowser flags in Image and Asset editor

Adds two new feature flags, upload and mediaBrowser that allow to hide respective buttons in the Image and Asset editors.

  • Packages: Neos

FEATURE: Add Atomic.Fusion prototypes `Component`, `Editable`, `ContentComponent` and `Augmenter`

The prototypes Component, Editable, ContentComponent and Augmenter are added the Neos-core.

  • Neos.Fusion:Component: Create a component that adds all properties to the props context and afterward evaluates the renderer.

  • Neos.Neos:Editable: Create an editable tag for a property. In the frontend, only the content of the property gets rendered.

  • Neos.Neos:ContentComponent: Base type to render component based content nodes, extends Neos.Fusion:Component

  • Neos.Fusion:Augmenter: Add html-attributes to renderer code as processor or as a standalone prototype.

In addition the class \Neos\Neos\Service\HtmlAugmenter was moved to \Neos\Fusion\Service\HtmlAugmenter with a deprecated backwards compatible layer.

  • Packages: Neos NodeTypes

FEATURE: Asset Constraints

This change introduces the following Privileges: ReadAssetPrivilege, ReadTagPrivilege. ReadAssetCollectionPrivilege

  • Packages: Media Neos

FEATURE: Introduce command to remove unused assets

This command iterates over all existing assets, checks their usage count and lists the assets which are not reported as used by any AssetUsageStrategies. The unused assets can than be removed.

Upgrade instructions

See https://www.neos.io/download-and-extend/upgrade-instructions-3-3-3-3.html


Additionally all changes in Flow 4.3 apply, see the release notes to further information. See http://flowframework.readthedocs.org/en/4.3/TheDefinitiveGuide/PartV/ReleaseNotes/430.html