Hope you submitted your responses for Sitecore Experience Survey 2018, if not please do it now without any delays. Our answers will help Sitecore to improvise the developer experiences in many ways.
While filling up the survey I came across a page which lists 40+ tools/modules which can be utilized to either develop or debug or optimize Sitecore Applications in lot more easier ways. Although I already used most of the tools listed but few of them I never heard/used and I found those tools very useful for many of our tasks we do in day to day basis. Hence I thought of penning a blog post by listing all the tools with brief introduction about it.
Here is the list of tools, I hope it will help you to find few best suitable for your project.
Analytics Database Manager (Artem Fursenko)
Analytics Database Manager allows to perform the following actions:
- Remove historical data older than specified date using various filters (including custom ones).
- Remove contacts without interactions.
- Re-index contact data.
Avanade Sitecore Foundation (Avanade)
Sitecore Foundation is a Sitecore Framework that follows the Helix modular architecture design principles. It provides reusable components and modules that meet many common requirements in Sitecore Projects. As it uses Helix Principles, you can choose to disable modules when customizing the framework for your solution.
- Common – Includes Branch Templates for Quickly creating Sites
- Foundation – Placeholder Settings and Rendering Settings for a Foundation Component Based Site
- StarterKit – Sample Site Implementation with Details about the Framework
- DXF – Sample Tenants with Test Setup for DXF Projects
- Airspace – Sample Digital Marketing Site based on Bootstrap and Handlebar Templates
Brightcove (Brightcove Inc.)
With Sitecore and Brightcove connected, you can manage your videos directly from within Sitecore enabling more of your team to upload, manage, and publish video. The new Brightcove Connector uses the new CMS API and Dynamic Ingest API, which supports the new Brightcove Player and new features such as, custom fields, playlists, captions, and multiple Brightcove accounts.
Clay Tablet (Clay Tablet Technologies)
Clay Tablet provides the leading translation integration solution for Sitecore. Managing the flow of multilingual content between Sitecore and translation providers is challenging. Ever increasing amounts of content, time-to-market pressures and the requirement for personalization of the user experience all point to the need to have an efficient, scalable and flexible translation solution. Clay Tablet’s Translation Connector provides all the tools and features necessary for the translation of large volumes of content, multiple sites and all languages that will ensure the success of your global marketing efforts.
Chrome Sitecore Developer Tool (Vlad Shpak)
Sitecore Developer Tool allows work with Sitecore instance that is opened in the current tab. You can quickly go to different admin pages like serialization, cache, show config and so on. Also you can switch between databases or set new database on the option page. Context menu allows to quickly go to Sitecore item, for this you should select id and select appropriate command in context menu.
All available configuration settings are presented in option page where you can add, remove or edit these pages.
Constellation (Rick Cabral)
Constellation.Sitecore Submodule of useful Sitecore objects extending existing CMS concepts. Constellation.Sitecore.Items is a framework for Sitecore. It contains a few basic Interfaces and Classes that can be used to construct objects that represent Sitecore.Data.Items.Items but include a few features not found in the native Sitecore API.
This library is intended to be paired with a code generation tool such as NVelocity or T4 templates. Code generation should use Sitecore Data Template definitions to create Interfaces and Classes. These can be used to create instances of Items that support multiple inheritance and contracts. Constellation.Sitecore.Items Items typically have declared properties representing a given Item’s fields. Using Constellation.Sitecore.Items makes Sitecore Items suitable for use with type-driven IoC or Dependency Injection scenarios, such as MVC/MVP and MVVM patterns.
Diamond (Rick Cabral)
Diamond is a framework for Sitecore. It contains a few basic Interfaces and Classes that can be used to construct objects that represent Sitecore.Data.Items.Items but include a few features not found in the native Sitecore API.
Diamond is intended to be paired with a code generation tool such as NVelocity or T4 templates. Code generation should use Sitecore Data Template definitions to create Interfaces and Classes. These can be used to create instances of Items that support multiple inheritance and contracts. Diamond Items typically have declared properties representing a given Item’s fields.
Using Diamond makes Sitecore Items suitable for use with type-driven IoC or Dependency Injection scenarios, such as MVC/MVP and MVVM patterns.
Dianoga (Connective DX)
Dianoga is a tool that optimizes images uploaded to the Sitecore media library to save bandwidth and improve page loading times as a result.
Dianoga ensures that your site is always serving fully optimized media library images even if you are using Sitecore’s dynamic resizing features (for example with Adaptive Images). Even if you have already optimized every image uploaded into the media library, after Sitecore performs image processing the result is not optimized (an unfortunate limitation of other image optimization libraries for Sitecore is that they only apply to the original image).
Front-end developers convert designs using a variety of front-end tools that generate HTML and CSS. Front-end developers then pass this work to back-end developers, who convert the code to a Sitecore component. Feydra eliminates the traditional serial implementation process and reduces the overall development timeline.
We built Feydra for our front-end team, and it was so game-changing we couldn’t keep it to ourselves.
Through virtualization and separation, front-end and back-end developers can work in parallel, reducing friction and shortening timelines. Feydra virtualizes the entire Sitecore instance allowing front-end developers to commit their changes to Source Control without requiring the intervention of a back-end developer.
Fortis (Richard Seal)
Fortis is a library that forms the basis of a strongly typed model of the Sitecore API. This enables us to develop reliable, maintainable sites more efficiently than with traditional, losely typed Sitecore development.
Glass.Mapper (Mike Edwards)
Glass Sitecore Mapper is an object mapping framework for mapping Sitecore items directly onto an object model, this allows you to model your entire Sitecore solution in code. The framework handles reading and writing to fields, creating relationships (parent, child, etc) and much more .
The second aim of the project is to make your Sitecore code unit testable by letting you deal with simple .NET classes and having interfaces that allow you to interact with Sitecore. With Glass Sitecore Mapper you can spend your time focused on solving the business problem and not writing repetitive boiler plate code.
Helix Visual Studio Templates (Laubplusco)
Visual Studio Project template engine for Sitecore Helix Modules and Solutions. Always run Visual Studio as administrator for the templates to work. The engine parses folders on the filesystem as templates by reading a manifest file describing the template content.
The file structure is then copied to the destination and attached to Visual Studio as described in the manifest. Click here for more details.
Helixbase (Neil Shack)
- Glass Mapper v5 – with fluent configuration and automated mapping registration
- Unicorn – including user and role sync
- Sitecore 9.0.2 ready
- Bootstrap v4
- Native dependency injection with auto controller registration
- A sample hero banner feature and sample site project for demonstration
- Generic content repositories (by Rendering, Item Context, or Glass Content)
- 301 redirects
- Version trimming rules engine – Items limited to 10 versions by default
- Search Templates computed index field – find all items from an index by any templates they implement
- Non admin Item Unlock
- Auto unlocks items when a user is deleted
- Gulp publish with webroot clean
- Show Title When Blank patch, the forgotten Sitecore feature!
- A module just for fun – currently adds logos to the Unicorn console
Launch Sitecore (Sitecore)
Launch Sitecore is a place where you can find/learn fundamentals of building a site, best practices as well as DMS functionality.
This site is available as a Sitecore package. Anyone interested can download the launchsitecore package from the site and install it in a local Sitecore instance and learn/explore how Sitecore has done things.
Leprechaun (Connective DX)
Leprechaun is a universal, open API for code generation from Rainbow serialized Sitecore templates. Leprechaun uses state-of-the-art Roslyn code generation technology instead of T4 templates for speedy generation that doesn’t require Visual Studio.
Peek VR/AR for Sitecore (TechGuilds)
Peek VR/AR for Sitecore XP is the world’s first Virtual Reality platform built on the world’s leading Experience Management Platform.
Peek VR/AR for Sitecore XP, by Sitecore experts TechGuilds, is a bold, forward-looking initiative aimed at empowering marketers and content managers to deliver VAMR experiences without the need to engage technical resources using their existing WCMS. Peek VR for Sitecore XP brings VR capability to the industry’s leading experience management platform, enabling enterprises to deliver WebVR experiences while leveraging the power of Sitecore’s best of breed experience management, marketing automation and WCMS capabilities, and because it’s WebVR, those experiences gracefully adapt to a wide range of VR and traditional devices without the need for customers to download a special purpose application.
Look at this Amazing VR Demo that is personalized.
TechGuilds also built this Augmented Reality Treasure Hunt Game on Peek for Sitecore.
Razl allows developers to have a complete side by side comparison between two Sitecore databases, highlighting features that are missing or not up to date. Users can easily move missing items from one database to another. Whether it’s finding that one missing template, moving an entire database or shifting just one item, Razl allows developers to do it seamlessly.
From development to testing and post production, Razl makes itself useful in dozens of different Sitecore scenarios. Features like Deep Compareallow all items in a Sitecore tree to be compared, while Lightning Mode provides the information at lightning speed. With numerous use cases that begin with the very first compare, experience the power of Razl for yourself!
Brainjocks SCORE is a comprehensive, modular development framework that cuts through the complexity of Sitecore implementation. It gives Sitecore partners a jump-start down the right path and the tools to deliver efficiently and effectively—whether the first site or the fifty-first.
SIF-less (Rob Ahnemann)
SIF-less is a UI Wrapper for Sitecore Installation Framework (SIF). It’s not called “SIF-non”, as it still requires SIF to operate. For those who don’t want to mess with parameters and the command line, this is for you. Click here for more details.
Sitecore Cognitive Services (Velir)
Sitecore Cognitive Services is all about integrating Microsoft Cognitive Services as native tools into Sitecore to enable new features such as a faceted image search and a Sitecore chat bot to name a few. The Sitecore chat bot is a tool that is accessible within Sitecore that allows you to communicate with the system and access a number of features in one quick and easy-to-access place.
The opportunities for accessibility are high, and eventually, with the ability to translate text to audio, and audio back to text, accessibility could be further improved by allowing access to some of Sitecore’s most powerful features through talking or text.
Sitecore Config Builder (Alen Pelin)
Sitecore ConfigBuilder is an instrument to get all your Sitecore configuration files and output single summarized configuration file that will be actually used by Sitecore CMS. It also can merge it with ASP.NET sections of web.config, and also sort all XML elements to make them easier to read and compare (soring is done only when it does not change sequence of handlers, pipeline processors etc.).
Sitecore Courier (Alexander Doroshenko)
Sitecore Courier aims to fill the gap between the development and production environments when building websites with Sitecore CMS.
It lets you build Sitecore Update packages automatically, by analyzing serialized Sitecore items and packaging only changed items. The module can be installed as a Sitecore package, or used in build system with simple .exe runner.
Sitecore Docker Images (Various)
Build your own Docker images out of every released Sitecore version since 8.2 rev. 170407 (Update 3) – the first version that officially supported Windows Server 2016. You can use this repository directly from you own build server and have it build and push images to your own private Docker repository. Click here for more details.
Sitecore Error Manager (Unic)
The main purpose of the Sitecore Error Manager is to show friendly error messages to the user. The user should see an error page, based on a Sitecore item if an error occurres. Initialy it was built to handle 404 errors, but the module now supports all kinds of error responses. Of course responding with the correct http response code and no infamous client redirects.
Please see the Wiki for the complete documentation.
Sitecore FakeDB (Sergey Shushlyapin)
Sitecore FakeDB is the unit testing framework for Sitecore that enables creation and manipulation of Sitecore content in memory. It is designed to minimize efforts for the test content initialization keeping focus on the minimal test data rather than comprehensive content tree representation.
Sitecore Habitat (or fork) (Sitecore)
Habitat is an example Sitecore solution built on the Helix architecture principles. It is designed to show how a Helix-based solution can be architected, and to demonstrate how tooling can be used to accomplish publishing, serialization, and testing. Habitat is not intended to be a starter solution, or as a recommendation of tools for your solutions.
Sitecore Ignition (Perficient)
Ignition or Ignition.Foundation is an open source development accelerator designed by the team at Perficient and released to the Sitecore community as a quick-start tool for beginning Sitecore projects. It has two primary components: the Sitecore Information Architecture piece and the .NET MVC Solution.
All along the way, the team has set things up so that we’re using best practices for Sitecore development as well as good development practices and patterns. We embrace SOLID, and our code is designed to enable you, the consumer, to quickly extend, add onto, and test your own code.
Sitecore Instance Manager (SIM) (Sitecore)
SIM is an open source tool for managing the local park of Sitecore instances. You can install, locate, maintain, reinstall or delete Sitecore products.
Sitecore iOS SDK (Sitecore)
Sitecore Log Analyzer (Sitecore)
Sitecore Log Analyzer is a powerful tool for parsing Sitecore log files. It provides the interface to explore and navigate through large amount of log data. For instance, you can group and analyze all errors, warnings, debug and audit messages logged by Sitecore application, monitor performance counters, and get a visual overview of website up time and downtime intervals.
The tool is designed for Sitecore administrators and developers who troubleshoot or monitor the health of Sitecore applications.
Sitecore Package Deployer (Hedgehog)
The Sitecore Package Deployer uses a Sitecore Job to automatically deploy update packages that have been copied into a folder on the Sitecore server. This reduces the complexity of deployments because copying files to a web server is already something the deployment process does.
Sitecore PowerShell Extensions (Adam Najmanowicz / Michael West)
The Sitecore PowerShell Extensions (SPE) module is a Sitecore development accelerator which can drastically increase your productivity and curtail the amount of time it takes to deliver a Sitecore solution.
The module provides a command line (CLI) and scripting environment (ISE) for automating tasks. SPE works with the Sitecore process, capable of making native calls to the Sitecore API and manipulating files. Running commands and writing scripts follow the standard and well-known Windows PowerShell syntax. Windows PowerShell is a common tool used in IT for desktop and server management, so we decided to stick with that as a framework to build upon.
Sitecore Rocks (Jakob Christensen)
Sitecore Rocks integrates directly with Microsoft Visual Studio 2015 and 2017 and gives developers a fast, streamlined development experience by letting them use the tools that they are familiar with. This will increase productivity and lower the incidence of bugs.
Sitecore SideKick (Jeff Darchuk)
Sidekick is a platform in which to serve angularjs apps with a micro-service back-end from within Sitecore. This makes it a flexible and extensible platform to provide highly reactive and responsive single page applications for Sitecore. Some features include:
- Resources are delivered from an embedded location in the dll. This makes it so that the installation footprint is extremely small since it ends up simply being a dll and a config file.
- Applications may be hidden or shown to specific roles, users, or admin only.
- The sidekick is available in three contexts, Content Editor, Experience Editor, and Desktop.
Each application is driven from an individual binary as well as an individual configuration file, so individual apps can easily be removed if they are not desired by removing the binary and config for the app that’s not desired.
Sitecore.Boost (Nathanael Mann)
With the concepts behind some of this work, Nathanael decided to create an open source project to allow others to see what has been done and contribute their production tested performance patches for the Sitecore platform. Sitecore.Boost contains a test harness setup complete with jMeter tests & serialized content.
The test content when deployed renders ‘Hello World’ renderings varying by the following:
- Number of renderings – 10 to 25
- Output Caching – Cached on Item, Cached on Standard Values, Cached on Rendering Definition, Uncached
- Rendering type – Controller / View Renderings
- Model – With / without
Sitecore.Glimpse (Kevin Obee)
What Firebug does for client-side debugging, Glimpse does for server-side debugging. It provides the best view into the inner workings of your application in the server while remaining easy to install, configure and use.
To find out more about what Glimpse itself is take a look at the Glimpse Wiki on GitHub.
The Sitecore Tab:
The Sitecore Analytics Tab:
Sitecore.React (not JSS) (Richard Seal)
The Sitecore.React module adds new rendering types: React Controller Rendering and React View Rendering. These renderings enable a developer to create the front end part of the component using React. The React components support Experience Editor and Personalization in the same way that standard view and controller renderings do. Full source is available on the GitHub repository. Full documentation is there too.
Sitecore.Ship (Kevin Obee)
Ship your Sitecore .Update or .Zip packages to your Sitecore instance using Sitecore Ship
Sitecore Ship is a lightweight extension to Sitecore to upload packages through http. Sitecore Ship is an opensource project built by Kevin Obee and can be found here: Sitecore Ship on Github
SitecoreUML (Zachary Kniebel)
SitecoreUML is an architecture visualization tool that enables architects and developers to visualize existing Sitecore architectures in UML and to create, visualize and deploy new Sitecore template architectures directly from their UML diagrams.
It even has the power to generate MSDN-style documentation for any Sitecore architecture!
SiteCron (Akshay Sura)
SiteCron module provides an advanced way to run Cron based scheduling jobs using Sitecore and Quartz Scheduler. It uses the CronTrigger functionality to help you schedule simple to complex jobs.
Synthesis (Connective DX)
Synthesis is an object mapping framework for Sitecore that enables developing more reliable and maintainable sites in less time than traditional Sitecore development. It is a strongly typed template object generator that is easily understandable for developers with either a Sitecore or traditional .NET background.
It neatly integrates with Sitecore MVC (via the Synthesis.Mvcpackage) as a View rendering model provider and IoC dependency for controller renderings.
Team Development for Sitecore is an essential tool for Sitecore development and deployment. TDS gives you the ability to keep track of all the Sitecore items in your project, by bringing them into a Microsoft compliant Source Code Control system. Using TDS, you will improve the control and overall performance of the team and your project.
Having everything in a Source Code Management System gives you one master repository for the project. The Source Code Management System becomes the master and central integration point of all the code and Sitecore items for a team. Even if you are a team of 1, using a Source Code Control system is the smart way to work, and provides many benefits.
Unicorn / Rainbow (Kam Figy / Mark Cassidy)
Unicorn is a utility for Sitecore that solves the issue of moving templates, renderings, and other database items between Sitecore instances. This becomes problematic when developers have their own local instances – packages are error-prone and tend to be forgotten on the way to production.
Unicorn solves this issue by writing serialized copies of Sitecore items to disk along with the code – this way, a copy of the necessary database items for a given codebase accompanies it in source control.
Sitecore Experience Generator generates “realistically looking” traffic for the Sitecore Experience Database (xDB) with configurable patterns, including:
- Trends over time
- Identified contacts with multiple visits
- Bounce rate
- Geo location
- Landing pages
- Internal and external search