Neos lives Open Innovation
So what does that mean?
The Neos community and core team provides a stable and well-tested CMS. Many developers are eager to improve how Neos currently works. They try new approaches and experiment how Neos could work even better. The best way for this is developing packages in your own namespace or forking Neos.
Let's take the new rendering language AFX. Martin Ficzel from Sitegeist wanted to replace Fluid/Fusion rendering. He envisioned a cutting-edge way for rendering similar to React. In the beginning, it wasn't clear if that would work. So a new package in the Sitegeist namespace was born. Martin could experiment. After a year it was clear that it actually is a great solution and many core developers were convinced about AFX. So it was integrated in the Neos project.
The idea is to experiment in your own packages and integrate the best solutions in the official Neos project. This allows rapid trial and error and lots of innovation.
So how should I build Neos projects?
The downside of this rapid innovation is that a lot of knowledge is spead throughout the Neos community. With so much innovation it's hard to keep up. And it's even harder to know the best practises if you are not deep inside the Neos community.
This is where my small contribution comes in. I am Roland Schütz, I spend much time and discussions distilling best practices for Neos. Many of the core developers write amazing code and fantastic patterns. And often they disagree about specific approaches.
As on many other sprints, last week at the Neos sprint in Dresden I talked to many developers about their best practices. And this is the sum of it:
The Neos-Skeleton provides an easy and powerful start for new projects - beginner-friendly and highly scalable. It implements all current best practices for Neos 4 and is frontend tooling agnostic.
It combines contributions of some of the best concepts. For example the Flowpack Neos best practice examples (Dmitri Pisarev and Dominique Feyer) and the single repo setup (Christian Müller) and AFX (Martin Ficzel).
On top, it adds well-tested community packages to provide everything you need for an amazing website.
- A powerful best practice layout rendering mechanism
- Best practice folder and naming structure
- A well-rounded set of packages to build typical websites