Ben  McKernan
Optimizely
Aug 15, 2014
visibility 20843
star star star star star star
(7 votes)

How to debug Episerver UI code

TL;DR
To run your site with uncompressed JavaScript in edit mode add <clientResources debug="true" /> to your web.config inside the episerver.framework element.

 

JavaScript Debug Files Explained

A while back I posted a blog about using uncompressed JavaScript files for debugging EPiServer 7. I thought it would be worth highlighting how you can use uncompressed JavaScript in EPiServer 7.6 and onwards and how it works with the new continuous release cycle. I am happy to say it is even easier than before!

As of EPiServer 7.6 the CMS UI has been released via NuGet packages. These packages contain all the JavaScript files required to run the UI compressed into a zip file. The system then reads the contents of the zip file at run time. The great thing about this approach is that at initialization, if the client resources debug flag is set to true, the system will first look for a debug version of the JavaScript zip file and load that instead if it exists.

In order to have the system use the debug files you need to enable debug mode for client resources. You can do this simply by adding the <clientResources debug="true" /> element to your web.config inside the episerver.framework element. You can then toggle the debug files on and off by changing the value of the debug attribute from true to false.

EPiServer.CMS.UI.Sources (advanced topic)

This nuget package contains all original UI source files together with uncompressed dojo & dijit.

That source package is built as part of every release so it ties quite simply into the continuous release cycle. You can install it the same way you would any other NuGet package from nuget.episerver.com.

Install-Package EPiServer.CMS.UI.Sources

In case you ever need to manipulate sources files and then create a customized dojo build you can use that package. It comes together with all dojo build tools.

Please note that in order to debug the EPiServer edit mode you don't need that package. The config change described above is sufficient.

Aug 15, 2014

Comments

Henrik Fransas
Henrik Fransas Aug 15, 2014 08:14 PM

Nice, This is a great help when trying to built more advanced properties or debugging when something is wrong.

Great work!

Paul
Paul Aug 26, 2014 05:45 AM

Hi Ben, great article. In my case, I need to make and keep the changes to some of these files. What do you recommend as the best way to re-compress with my changes?

error Please login to comment.
Latest blogs
Building UI Extensions for Optimizely SaaS CMS

Introduction Developers have been extending the functionality of Optimizely PaaS CMS for years using addons built in C# and deployed as NuGet...

Mark Stott | Oct 15, 2026

Cheapskate AI Translator: Because Translation Should Not Require a Second Mortgage

There is a particular kind of software project that begins with a detailed architecture document, a product roadmap, and a carefully assembled...

Linh Doan Cuu | Oct 15, 2026

Computed Fields in CMS 13 Content Contracts with Optimizely Graph

Content Contracts in Optimizely CMS 13 allow different content types to share a common structure when querying Optimizely Graph. But what if the...

Mardy | Oct 14, 2026

Opal Workflow Agents And The Graph Webhook Trap

What we did? We built a compliance review workflow agent in Opal. The job was simple: when an editor submits a page for review in Optimizely CMS 13...

Ritu Madan | Oct 14, 2026