The benefits of Sitefinity .NET Core renderer

What is .NET Core?
ASP.NET Core is a new version of the ASP.NET Framework, which is now free, open source, and cross-platform. It is a modernisation of the ASP.NET framework with a heavy emphasis on performance.
What is the Sitefinity .NET Core renderer?
With the .NET Core renderer, Sitefinity is moving to a 3 Tier architecture instead of 2. This is achieved by separating the website's frontend into its own rendering app. The new structure looks like:

In standard Sitefinity setups, there are two tiers above, with Tier 2 serving both the backend and the frontend. The .NET Core renderer.
What are the benefits of a 3 Tier architecture?
Fast Deployments/Restarts
Deploying code changes and restarting the Sitefinity CMS can be slow, and for developers, it can mean 30-40-second waits to see their changes each time. Changes to the .NET Core render that don’t need a change to the CMS instance will restart in a matter of seconds. This is a big boost for development speed and deployment downtimes.
Flexible development
Developers can use any IDE or OS that supports ASP.NET Core, which has become multi-platform.
Increased Reliability
Separation between the website and the administration increases system security and reliability and reduces the risk of a single point of failure. Decoupling frontend and backend development ensures a shorter time to market and reduces the risk of breaking critical backend infrastructure.
Easier Upgrades
Because all customisations are done in the ASP.NET render app, the Sitefinity CMS should remain relatively untouched. This would reduce the risk of issues arising from custom code implementations.
Code Reusability
Since the Frontend and CMS are decoupled, you can have your collection of widgets in a single renderer app, which can be plugged into any Sitefinity CMS and themed to match the next site.
Will it work in existing projects?
Yes, once it is set up correctly, you can add the renderer to existing projects. If an older page is requested on the new .NET Core frontend, the renderer acts as a proxy to the existing Sitefinity CMS. This allows you to set up new pages using the .NET Core page editor or the existing Sitefinity CMS page editor. Pages created with the .NET Core renderer are only viewable when accessing via the .NET Core renderer.
Sounds great, should I implement this in my next project?
While the technology preview works great in Sitefinity 13.1, it is still a little behind in terms of out-of-the-box features. Currently, only 3 built-in widgets are available (Content Block, Image Widget, and Call to Action). Even though you are free to develop your own widgets, in our experience, it's best to leverage as many out-of-the-box features as possible to ensure best practices and standards are met.
Other current limitations of the system include a lack of flexibility in layout grid widgets and a lack of template inheritance. Both of these are critical to how we develop websites, and for now, they are not there. We know Sitefinity are working on these at the moment, along with a host of new built-in widgets.
In conclusion, we believe this new approach from Sitefinity will be for the better, but while it is still in early stages, it's best to keep an eye on it for now rather than rushing it into the next project.
If you would like to discuss an upcoming project built on Sitefinity, get in touch.