Does this replace Umbraco Heartcore?
When we have talked headless before, we’ve often talked about it in terms of our headless SaaS offering, Umbraco Heartcore - so does this release replace Heartcore? Not in the slightest 🙂
Umbraco Heartcore has a multitude of advantages you do not get by simply using the Content Delivery API. Heartcore’s Content Delivery Platform comes with CDN features, caching, GraphQL, and includes multiple tools in the backoffice dedicated to supporting all the Heartcore-specific features.
On top of all that Umbraco Heartcore is SaaS (Software as a Service) which means that all upgrades and maintenance are fully automated, with continuous support for the architecture as well as the APIs. The Heartcore team has been instrumental in planning and implementing the Content Delivery API so there is alignment across both the standard CMS and the SaaS offering. The upcoming REST API updates for Umbraco Heartcore will further enhance the alignment making it even easier for developers to jump between standard CMS and Heartcore.
So, if you have a project that requires a pure headless approach Umbraco Heartcore is still the best solution for this.
Support for Entity Framework Core
Umbraco 12 also introduces support for the popular EF Core (Entity Framework Core) library. EF Core eliminates the need for writing repetitive and boilerplate database access code. It offers a high-level abstraction over the database, a consistent widely used, convention-based approach, allowing developers to work with objects and entities rather than directly interacting with database queries. In short EF Core boosts developer productivity by reducing the amount of code they have to write and maintain.
The EF Core support added in Umbraco 12 is focusing on making it easier for developers to create and maintain custom database tables and data in a performant way with access to the Umbraco context and services required.
A new version of ImageSharp
ImageSharp is the cross-platform image processing library used in Umbraco. A new major version (ImageSharp 3) was introduced a few months back and is powering Umbraco 12 and subsequent releases.
ImageSharp 3 supports the latest .NET 6 LTS framework, resulting in better performance and simplified features. The library has become faster and more efficient, offering new image decoding and encoding options, as well as some exciting new features and security improvements. The update also introduces powerful DecoderOptions for controlling image loading. Notably, the new version achieves significant performance gains in alpha compositing and color adjustments.
New split license for ImageSharp
Do note that the new version of ImageSharp also comes with a new license. If you are only using the built-in processing that ships with Umbraco, nothing changes and you can continue as always while benefiting from the fantastic work, and performance gains in the latest release. Should you require the use of ImageSharp functionality and APIs directly in your code, pay attention to the license change.
For the same reason, we also keep shipping an ImageSharp 2 option covering the needs of Umbraco. We’ve made it possible for you to replace ImageSharp3 with the ImageSharp2 implementation and thereby allow any existing projects utilizing the library directly to be able to upgrade to Umbraco 12 and still adhere to licensing requirements. This of course means you will not be benefitting from the features and performance added in the latest version.
See the ImageSharp 3 release blog post for more information.