[TechSpeak] What Is Sitecore Helix?

Sitecore-Helix-photo

Today, there’s a wide variety of principles that software developers use extensively, such as OOD, SOLID, design patterns and others. Although they are all suited for development on Sitecore, this powerful platform has specific requirements, and Helix is at its heart. What is it? Let’s figure it out.

What Is Sitecore Helix?

Helix was created by Sitecore, a major vendor of systems for content management, in 2016. It is a collection of practices, guidelines and rules for the development lifecycle that provides recommendations on technical design principles and solution architecture of Sitecore product implementations.

However, Helix is theory, and Habitat is practice. Habitat is a sample application that perfectly illustrates theoretical recommendations specified by Helix. At the end of 2019, Sitecore Habitat was replaced by Sitecore Helix Examples.

The Layer Concept of Helix

The main purpose of Helix is to provide developers with clear-cut guidelines to help them build solutions that are:

  • future-proof
  • easy to maintain
  • easy to extend.

With its recommendations, it’s easy to get through all stages of Sitecore implementations.

The Benefits of Helix

Although aimed at making life easier for developers, this set of rules provides benefits to customers and Sitecore partners as a result.

Helix gives Sitecore partners an opportunity to implement projects with clean code, guided by unified, tried-and-true development methodology approved and supported by the vendor. This helps build consistently, and efficiently and quickly onboard new developers.

Customers also enjoy the benefits of the tried-and-true development methodology, such as high quality and quick time to market of implementations, and their easy management.

Helix: the Main Principles of the Implementation Process

Generally, a Habitat project sample will provide an understanding of what Helix rules–based architecture looks like.

Image 1. The Solution ‘Habitat’

The-Solution-Habitat

Helix has three layers: Project, Feature and Foundation (or three folders in a solution, respectively) with downward dependency.

The Project layer includes everything that is related to websites. Also, it brings together all features in one place.

Image 2. The Project Layer

The-Project-Layer

As the name suggests, the Feature layer contains all features, such as listings, news, blog posts, product descriptions and others. Solution features aren’t interdependent, and changes in one feature don’t bring about changes in other places.

Image 3. The Feature Layer

The-Feature-Layer

The Foundation layer is the basic, lowest level of the Sitecore system. Any change that happens here impacts other modules, which is why it should be reliable and robust.

A module is any project in the Foundation or Feature layer that relates to a specific business goal.

Image 4. The Foundation Layer

The-Foundation-Layer

Helix and Unicorn

As you will notice when surfing a Habitat solution, Unicorn is used here by default. The Sitecore.Foundation.Serialization module contains the main setup.

Image 5. The Sitecore.Foundation.Serialization Module

The-Sitecore.Foundation.Serialization-Module

Sometimes, other modules will contain configuration to serialized items specific to a certain module.

Image 6. An Example of Serialization Location

An-Example-of-Serialization-Location

Serialized items are stored in the serialization folder inside a module.

Image 7. The Serialization Folder

The-Serialization-Folder

Helix and TDS

Hedgehog, an IT company that specializes in Sitecore, has built its own version of Habitat, based on TDS (Team Development for Sitecore). This version is especially helpful for developers who use TDS.

Well-Thought-Out, Rule-Based Sitecore Development

Although Sitecore development is possible without Helix, I strongly recommend following its principles and relying on it in your implementations. It helps enhance development quality and create solutions that are easy to use, maintain and extend, regardless of your business requirements.

To learn more about it or about migrating to it, feel free to contact me.

Rating: 4.3/5. From 6 votes. Show votes.
Please wait...

About the author

Raman Khalupau
Raman Khalupau

Raman Khalupau is a talented, certified Sitecore Lead developer who helps transform routine projects into extraordinary pieces of IT art. Aimed at non-stop self-improvement, Raman also manages the internal Sitecore community and helps less experienced developers become true experts. Find him on LinkedIn.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>