Neos 3.3 LTS and Flow 4.3 LTS Released

The Neos Team is excited to announce the release of Neos 3.3 LTS and Flow 4.3 LTS!
This release includes the Neos User-Interface completely rewritten in ReactJS as default for new projects.
On top of that we added lots of new features and improvements for editors, integrators and developers. 

– Written by


The improved Neos UI

As announced at Inspiring Conference 2016 and at Neos Conference 2017, the Neos User-Interface was completely rewritten based on ReactJS. This is a solid foundation for the user experience of Neos 3.3 and will also allow us to take the Neos UX to a new level in the future.

While we have focussed on recreating the existing User-Interface, there are important changes under the hood and exciting 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 much faster document switching and initialization.
  • The content area is now loaded into an iFrame, so CSS Media Queries will work properly in the backend. In addition this prevents unplanned CSS or JavaScript interactions between your 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,
    • support for keyboard shortcuts for basic editing operations (bold/italic/ and try CTRL-Z to undo your last type commands!),
    • the ability to add custom styles and classes to the editor.

The new UI is default for new projects. See the upgrade instructions to learn how to enable it for existing projects.

Watch the talk about the Neos React UI given by Sebastian Kurfürst during Neos Conference 2017. Jump directly to minute 15:39 for the speed comparison.

 

Under the hood

We use state of the art web-technologies to create the improved Neos editing experience:

We have extensively tested the React UI on various real-world projects of all sizes, but as with all huge changes, there might still be bugs we do not know about yet. If you find some, please open an issue in our neos-ui issue tracker!

React UI Crowd funding

Without the support of our sponsors the final push for this release would not have been possible. We want to thank all sponsors who have supported our efforts:

Core Feature Sponsors (5.000 €): 1&1 (10.000 €), punkt.deH-Hotelssandstorm, sitegeist

1&1: Core Feature Sponsor silver

Logo of 1&1

Punkt.de: Core Feature Sponsor bronze

Logo of Punkt.de

H-Hotels: Core Feature Sponsor bronze

Logo of H-Hotels

Sitegeist: Core Feature Sponsor bronze

Logo of sitegeist

Sandstorm: Core Feature Sponsor bronze

Logo of Sandstorm

Premium Sponsors (2.000 €): Mittwald CM Service (3.500 €), wysiwyg*gesagt.getan.onedropTechDivision

We'd also like to thank our value sponsors Tyll Weiß (2x), vivomedia.deKaufmann Digitalwebexcessbit.loftSebastian Helzleweb&conetworkteamSchwabe AG and our individual sponsors contenance, werk4, Peter Rauber, Kathleen Peschke, Jonathan Uhlmann and Lorenz Ulrich for supporting the project.


Changes in Neos

Split Neos.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 form 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.

Improved image-processing

Neos now allows to configure the interlace/progressive-mode for generated images. This allows to show images faster to the viewer while data is still transferred for the full resolution. Whenever large hires-images are used this makes a noticable difference for the visitors.

Additionally, the quality for each processed image can now be controlled via Fluid or Fusion. Until now this was controlled by a single global setting, that was used for all image-sizes and resolutions.

Atomic.Fusion - Prototypes

Fusion has become increasingly important over the last years and we are currently seeing more and more projects that use Fusion as the sole rendering layer and completely work without Fluid.

To support such use-cases we added four new Fusion prototypes to the core that were initially developed in the package PackageFactory.AtomicFusion.

  • Neos.Fusion:Component: To isolate rendering this prototype passes the given attributes as props to the internal renderer.
  • Neos.Fusion:Augmenter: Add classes and attributes to the rendered children.
  • Neos.Neos:Editable: Create an inline-editable field for a property in the Neos backend that can be passed to a rendering-component.
  • Neos.Neos:ContentComponent: A component that renders a ContentNode. It is augmented with the required metaData for the interaction with the Neos-UI.

AFX Fusion-DSL

With Neos 3.2 we added support for domain specific languages to Fusion. For Neos 3.3 we moved the AFX Fusion-DSL, that was originally developed in PackageFactory.AtomicFusion.Afx, to the Neos-namespace. This package will not be installed by default but can be required via composer with the key neos/fusion-afx if you want to use it.


Changes in Flow

Support for PHP 7.2

Just weeks after the final release of PHP 7.2 Neos and Flow now officially support the latest PHP Version. Actually all Neos 3.x and Flow 4.x Versions will support PHP 7.2 from now on.

Routing-Parameters

The Flow-routing is improved and now allows the definition of RoutingParameters via HTTP-components that can later on be handled by custom RoutePartHandlers. That way the routing can react to influences other than the uri-path, like the requested host-name or scheme or any other computable value.

Seperated Log Package

The log-package was extracted from Flow to become a separate independent composer-package neos/flow-log that can be used outside of Neos or Flow projects. This continues our long-time-effort of extracting parts of our codebase that can be used separately and making them available to the whole php-community.


Documentation and Support

Upgrading

The detailed upgrading process for Neos 3.3 is explained in the upgrade instructions.

Changelogs

See Neos 3.3 and Flow 4.3 Changelogs for the full list of changes and details.

Support for Neos 3.3 LTS and Flow 4.3 LTS

Neos 3.3 LTS and Flow 4.3 LTS will get bugfixes until December 2019 and security fixes until December 2020.


Get Involved!

This release is the product of a great community! Join the conversation at discuss.neos.io or on Slack and be part of our community and help us build the next release of Neos. If you are considering Neos for your organization, but have some unanswered questions, please feel free to get in touch with the Neos Team. We would be happy to help you get started on your Neos journey!

And if Neos helps you with your business, how about supporting the Neos Team financially, so we can meet in person and work on the next releases?


Neos Conference 2018

From April 13th to April 14th 2018 - the Neos Community gathers at the Neos Conference in Hamburg, Germany. Join us to meet the "who-is-who" of the international Neos community: team members, agencies and organizations, developers and maybe future colleagues.