Umbraco

Umbraco is an open source CMS system based on .NET technology. Umbraco was started in Denmark in 2004 and is among the top fifteen open source .NET applications today. One of Umbraco's key features is its simple and intuitive user interface ensuring the web editor a friendly and easy to use CMS.

Integration with .NET
Umbraco supports both Custom and Web User Controls, which means that you can work exactly as you're used to, using any .NET language. You can insert your controls in templates, XSLT functions or even place them anywhere in the rich text editor. Umbraco can even send data to your controls via Public Properties, all with a full UI for the end user.

AJAX
Umbraco is fully Ajax compatible and support Microsoft ASP.NET Ajax right out of the box so you don't have to worry about ScriptManagers and all the other minutea. You can just enjoy the magical power of UpdatePanels, etc. And if jQuery, Prototype, MooTools or another Ajax toolkit is the hype flavour of the day, it'll work too. But our love for Ajax doesn't stop here.

Umbraco features an easy to use framework for working with dynamic content and javascript called umbraco Base. The umbraco Base framework enables developers to create simple urls to umbraco content and .NET resources, making it much easier to work with .NET-based data directly from any javascript framework, like jQuery, YUI, Prototype or whatever library you prefer to use.

XSLT
Umbraco uses XSLT for generating dynamic lists. Sometimes you need some extra power when doing XSLT. Like all the power of .NET and any of your own Business Logic. With umbraco's implementation of XSLT you have exactly that. Simply create a class library with Public Static methods and copy the dll to your installation. Then add one line to an XML configuration file and you can access your own methods directly from XSLT.

Documented API
Umbraco comes with an extensive and well-documented API, extracted from almost two million lines of raw XML comments. That makes it possible to harness all the power from the APIs and make it possible to programmatically replicate all the exciting functionality from the UI.

Event Model
Umbraco exposes the events in the content engine, making it possible to automate tasks based on actions that content editors make within the umbraco UI.

Populate a 3rd party search index, generate an RSS feed or even create static html files automatically. You can easily create actions to respond to umbraco events such as Create, Publish, Delete, UnPublish, Move, Copy and more than twenty other events.

Hooking into these events is simply a matter of creating a .NET class that implements an interface with two properties and an execute method. Once the assembly is copied into your umbraco installation, it's automatically registered and begins working immediately without even needing to modify any configuration files.

Open Source
The umbraco framework is open source licensed under the MIT license. This means that you can see and modify the very inner workings of umbraco.

The MIT License is not a copy-left license. This means that you don't need to worry about all the myths in open source about being forced to give back your work. With umbraco under the MIT license you're free to do whatever you want with your amendments when you implement a site. In other words the legal perspective of implementing umbraco is super simple (the license is less than 20 lines long).

We ship a full UI with the umbraco framework for free under a proprietary license and the full source code is also freely available for the UI. Again, this means that you have access to the very inner workings of the UI side of umbraco and can easily customize it to fit your needs.

The irony of having full access to the source code of umbraco is that you probably won't need it. Umbraco's award-winning integration and extensibility means you can do almost anything with umbraco without having to modify the core source code, which also makes upgrades very easy.

Open and Extendable
Umbraco was designed with flexibility and extensibility as a top requirement.  Whether you want to integrate legacy applications, add advanced math operations to your XSLT or use custom 3rd party controls for editing - it not only possible to extend umbraco, but easy. And all without modifying the source.

Some may call it magic, others call it plug-in architecture. We simply believe that it's the natural and right thing to do.

A completely open and transparent templating system, based on W3C standards
With umbraco you have complete freedom to craft your html any way you want, and with any tool you choose. We believe a CMS should provide a strong foundation but stay out of your way. We believe that your design - the markup - is king. We've produced a system that lets you specify how the system should treat your design, rather than the other way around.

Do you want a content managed web site that validates as XHTML Strict? No problem. Want to use Frontpage 97 or build a table-based layout with bloated and invalid html? If you really fancy that, umbraco can handle whatever you throw at it.

The important thing is that it's up to you, not the CMS.

Accessibility
Ensuring that your website is accessible is increasingly important. Not only because of Section 508 legislations but also because good accessibility leads to a better user experience for all users.

Because of the markup freedom in templates, umbraco lets you create valid forms that properly utilize fieldsets and labels, it lets you design list-based navigation with access keys, use sIFR for beautiful and SEO-friendly headlines, alternative css or any other markup technique that prioritizes the importance of accessibility and standards-compliance while maximizing the visual design.

No limits on design
Say goodbye to skins. Say hello to unique and compelling websites

We believe that following web standards is the best way to build a website and that's why umbraco focuses on web standards.

We also know how important one's existing conventions and methodology are and how much they mean to you; because they mean so much to us. That's why we built umbraco, a CMS that shows respect.

You can build your website using your own html markup, your own css, and all the conventions and techniques you're familiar with.

Never again will your websites all look vaguely similar because you're limited to skinning a fixed design. Umbraco gives you the flexibility, and power to set your designs free.

Super simple template engine
Umbraco doesn't come with yet-another-templating language or a proprietary scripting language you have to learn. Why re-invent the wheel or waste time? Umbraco works the way you do.

Putting your design into umbraco couldn't be easier. Simply copy/paste the html from your favorite tool and insert it into umbraco's web-based template editor. Highlight your placeholders - usually the "Lorem Ipsum" text in your mockups - and click the "insert umbraco field" button. Then select the dynamic content that should be inserted when the page is rendered. Nothing could be simpler.

Add CMS support to your Flash movies in five minutes
Umbraco is a perfect fit to add content management support for RIA-powered websites based on Flash or Silverlight.

Umbraco is a master at delivering content as xml, which makes it a perfect match for delivering dynamic content to Flash, Silverlight, and other tools.

As an example, Nibble.FX, a free add-on from our package repository, integrates umbraco content with your Flash movie. A simple xml file upload automatically creates everything you need in umbraco, and then you simply update your Flash file's actionscript to load its content from an umbraco url with dynamic content directly from your umbraco site. Change the content in umbraco and it is instantly reflected in your Flash player.

Umbraco Hosting
Umbraco uses a lot of XSLT, and most XSLT use extension objects. XSLT extension objects require full thrust which could be a problem at shared hosting.