Why use CarrotCake when there are loads of established Dot Net CMS applications available? cms-dashboard.png

Simple, many of these CMSs try to be all things to all people. This app delivers a lightweight framework to host content, with slots that allow easy integration of custom code. It is primarily a content management system that provides capability to easily incorporate custom programming.

There are many open source CMSs out there, many are mature and have huge user base so why bother building a new one? There are several reasons:

  • The ASP.NET namespace of open source CMSs is small - more choice is never a bad thing and we couldn't find a CMS which tick all the boxes for us.
  • Flexibility - We wanted a content management system which would easily integrate with bespoke features such as eCommerce, CRM and so forth. CarrotCake CMS has been built in a fashion that allows for code inclusion through widgets.
  • Basic Core - It also does not force dozens of features on you that you have zero interested or need, but instead create a distraction away from the core of content management.
  • Simplicity of development - We have made CarrotCake CMS extremely simple to develop against, a fully featured website can be built in no time at all, with little or no database management required.
  • Ease of use for clients - we have approached the creation of the CarrotCake CMS with the client in mind. At the end of the day, it doesn't matter how great your CMS is if it's difficult to use and to explain.
  • Developer Accessibility - If you are building from source, it will just run (with the proper Visual Studio and MSSQL versions), no mysteries of locating companion projects, being required to be in a GIT clone folder, or figuring out which project is the main project for running the website.

If you aren't looking to have an event calendar (a basic one is available as one of the sample widgets), forum, email campaign etc. completely embedded in your main website (either giving you no choice or paying for a feature that you don't need because you have an existing product that you are happy with), this is for you. For anyone who has been thinking of using Sitefinity for a modest website and cringed at spending $2000+ and all you really wanted was a visual way to manage your website content, try CarrotCake CMS. If you have thought of using DotNetNuke but can't make heads or tails of how to slice up your HTML/CSS markup into the requisite user control components, this is for you.

CarrotCake will work on most shared hosting as it uses stock .Net 3.5 and will work under medium trust, only a minor subset of features won't be available, such as importing images from a WordPress blog when importing WordPress XML, however, you can always run the site on a local system (your desktop) and then simply upload the images after obtaining them. Many hosting providers today support MVC 5 and .Net 8.0 hosting as well, though pay attention to the fine print with the hosting companies regarding special configurations for these newer technologies.

If you have created a user control, creating a CarrotCake widget will be familiar. We have implemented the widgets to be primarily user controls (though server controls can also be loaded) with configuration files to enumerate them. We have followed this same pattern for the admin. Rather than force users into adding esoteric interfaces when all you want wanted is to have an admin dashboard for that registration form widget you added on your homepage. While interfaces are provided for easier integration between your code and the CMS, they are recommended, though not required.

When using the content editor to manage your web pages, you are not forced into using a particular dot net Ajax control set, all page edits are passed through jQuery AJAX calls which gives you the freedom to use Telerik AJAX controls if you want to use them.

The navigation server controls that are baked into the CMS are using the UL/LI paradigm, so you could even grab your favorite WordPress template, save a post as HTML, and begin swapping out navigation elements and have your website look like your WP blog in short order. There is also a template-able version of the top two-level navigation menu that allows the user to provide additional HTML markup if a template wants more than just list items and anchor tags.