Try our conversational search powered by Generative AI!

Jonas Bergqvist
Apr 16, 2015
(8 votes)

Introducing BrilliantCut

BrilliantCut makes it possible to filter the catalog UI using facets. The project includes facets like language, market, and category. It also includes a free text search, and the possibility to choose if the search should apply to children or descendants. The more important feature in BrilliantCut is the possibility to create your own facets for filtering the catalog UI. It’s very easy to creating your own facets in the catalog UI using a fluent API.


The video can also be watched here:


The code is open source and can be found at More information about the project will be found at that page.


The nuget packages is located at “”. Add a nuget package source to that directory in Visual Studio to be able to install “BrilliantCut”. When the package source has been added in Visual Studio, the packages can be installed to your site by writing “install-package brilliantcut.widget” in the package manager console.

Apr 16, 2015


Quan Mai
Quan Mai Apr 16, 2015 12:11 PM

This is cool! Let's hope this will someday be part of Commerce code

Apr 16, 2015 03:08 PM

This is awesome, well done Jonas!

Adam Finzel
Adam Finzel Apr 16, 2015 09:34 PM

This looks very good.

Welcome Servicedesk
Welcome Servicedesk Jun 10, 2015 11:55 AM

Hi Jonas,

I am trying to install via Nuget but getting installations issue. Our website is on EPiServer.Commerce.Core 8.11.5. I am not sure how to proceed with this. Any Help?


install-package : Updating 'EPiServer.Commerce.Core 7.12.0' to 'EPiServer.Commerce.Core 8.9.0' failed. Unable to find a version of 'EPiServer.Commerce.UI' that is compatible with

'EPiServer.Commerce.Core 8.9.0'.

At line:1 char:1

+ install-package brilliantcut.widget

+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    + CategoryInfo          : NotSpecified: (:) [Install-Package], InvalidOperationException

    + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand

Jul 15, 2015 07:08 AM

I installed on the latest build last week, and it worked. I hope it works for you now Khurram. 

David Elias
David Elias May 26, 2016 06:30 PM

I am curious if this is still working for people?  We are on CMS 9.8.3, Commerce 9.14, Find, and Find.Commerce 9.5.3.  Basically, We can install the NuGet Widgit, which installs the Core too.  I can add the BrilliantCut gadget and see the initial option buttons of No Filtering, Filter result list, etc.  When we add the Initialization Module as described in the video (pasted below), neither of the the facet items I added display.  Meaning, filters for Children and Descendents options don't display, nor does the text box.

using System;
using System.Linq;
using BrilliantCut.Core;
using BrilliantCut.Core.Filters.Implementations;
using BrilliantCut.Core.FilterSettings;
using EPiServer.Framework;
using EPiServer.Framework.Initialization;

namespace Polaris.CMS.Core.Initialization
public class BrilliantCutInitialization : IInitializableModule
public void Initialize(InitializationEngine context)
.Facet(new TextboxFilterSetting(50));

public void Uninitialize(InitializationEngine context)
//Add uninitialization logic

David Elias
David Elias May 26, 2016 06:31 PM

Oh, and yes we the have the catalog indexed.

Dec 8, 2016 08:43 AM

There is probably several things that needs to be worked on for the last versions of Commerce. I havn't had time to work on this for over a year, sorry for that.

Please login to comment.
Latest blogs
The A/A Test: What You Need to Know

Sure, we all know what an A/B test can do. But what is an A/A test? How is it different? With an A/B test, we know that we can take a webpage (our...

Lindsey Rogers | Apr 15, 2024

.Net Core Timezone ID's Windows vs Linux

Hey all, First post here and I would like to talk about Timezone ID's and How Windows and Linux systems use different IDs. We currently run a .NET...

sheider | Apr 15, 2024

What's new in Language Manager 5.3.0

In Language Manager (LM) version 5.2.0, we added an option in appsettings.json called TranslateOrCopyContentAreaChildrenBlockForTypes . It does...

Quoc Anh Nguyen | Apr 15, 2024

Optimizely Search & Navigation: Boosting in Unified Search

In the Optimizely Search & Navigation admin view, administrators can set a certain weight of different properties (title, content, summary, or...

Tung Tran | Apr 15, 2024