Project Description
A template-based ASP.Net CMS built with C#, SQL server, jQueryUI, and TinyMCE. Supports multi-tenant webroot and database and works well in medium trust.

CarrotCake is an Open Source CMS (content management system) built on C# (C Sharp) ASP.Net to leverage jQueryUI and TinyMCE. Designed for ease of use for editing pages & incorporating of modules/custom code. This CMS is built on ASP.Net 3.5 WebForms, SQL Membership Provider, LINQ to SQL, and MSSQL Server. The project is also hosted on Google Code and SourceForge.

Includes a blogging engine and other system wide improvements and features. This includes configurable date based blog post URLs, blog post content association with categories and tags, assignment/customization of category and tag URL patterns, simple blog post feedback collection and review, blog post pagination/indexes, designation of default blog page (required to make search, category links, or tag links function), URL date formatting patterns, RSS feed support for posts and pages, and import of content from WordPress XML export files (tested against versions 2.9, 3.0, and 3.4).

Other features also include date based release and retirement of content - allowing you to queue up content to appear or disappear from your site on a pre-arranged schedule, site timezone designation, ability to rename the administration folder, and site search.

The goal of this CMS is to provide a lightweight platform where modules can be added to a page without having to do anything other than build user controls and adding an entry to a control list. There are some interfaces for hooking the CMS to have data injected at runtime. Examples of how one might create a widget can be found in the solution.

We wanted to make it easy to create new templates, all you have to do is take a standard HTML+CSS template, have it inherit from the core content page class, swap out key areas with the CMS's custom controls, save the file as an ASPX, and add to the list of skins. Examples of such templates can be found in the project which should serve as examples to create your own.

Once widgets (aka your user controls with your custom code) have been added to the widget list, engage the advanced edit and get a WYSIWYG editor and simply drop the widget item into a placeholder. The advanced edit UI provides a floating toolbar that can be minimized (using the - icon) or scooted to the left or right of the browser (using the left or right arrows), to better allow access to the hot spots.

Content areas are editable by way of a WYSIWYG editor (powered by TinyMCE), and will allow you to format your text without having to know much (or any) actual HTML programming.

The edit interface has so far been tested in IE 8-9, Firefox 3.6-9.0, and Chrome 13-21, all with Windows 7 x64. Other browsers/OS are likely supported, but are as yet untested.

Last edited Jan 9 at 12:45 AM by ninianne98, version 11