Composite C1 Blog

Read the latest Blogs from Composite. Also sign up for our Monthly
Newsletter or follow us on Facebook if you want to be the first to know?

We have a release!

05 June 2013 : Marcus Wendt

We've just released Composite C1 version 4, our second big milestone release since we open-sourced our CMS back in October 2010. If you are in the business of building web sites you will love this release.

To get your hands on this release, you can use one of the following options:

  • http://compositec1.codeplex.com/ Download the release build for IIS or Visual Studio. Full source code is also available.
  • http://bit.ly/InstallCompositeC1 If you are on a Windows machine you can get Composite C1 up and running fast via the Windows Web App gallery.
  • https://manage.windowsazure.com/ Launch Composite C1 online on Windows Azure: New | Compute | Web Site | From Gallery | .NET CMS Composite C1. First time users need to register, but this route will give you permanently free hosting for your site.

If you are in Copenhagen June 6th, swing by our release party – more info at http://c1v4release.eventbrite.com/

Composite C1 version 4 in very lofty terms

We would like to think that Composite C1 version 4 makes it easier to go from zero to the website you want to build and maintain. Especially web agencies – small and large – will feel more effective with this release.

To get there we made numerous feature improvements in a lot of different places, some small, but satisfactory, some larger with a more fundamental impact. There are new features for the end-users and the web designers, but it's the web and ASP.NET developers that get the most release goodies with version 4.

Perhaps the most stable .NET CMS in the world, thanks to you!

This is also a very stable, well performing and bug free release – between November and May we have had 5 public betas and 1 candidate release totaling 1600 downloads and a lot of feedback. We have seen and interacted with teams around the world build websites on our betas.

This beta activity has resulted in more than 50 production web sites now running live on a pre-release of Composite C1 version 4, which – in our book - is remarkable good beta user activity and something we are really excited about.

The best part of this is that our public bug tracker now has zero bugs that were reported in 2013 marked as open – every single bug report made on our CodePlex site in the last 6 months has been fixed and closed.

Developing in the open and enabling developers and community to use your open source project from the early stages have helped Composite C1 become even more stable than usual and probably among the most stable .NET CMS' you can currently get your hand on.

If you are one of the awesome people that joined us at some point in our endeavor from beta 1 to this release, I'd like to thank you for trusting us and helping us shape this release. In our world you rock! You can upgrade to the final release via "System | Packages | Available Packages | Composite.Update" (as always, make a backup first) and enjoy the final product.

More power to the C1 Console users

When it comes to editing content we have dropped support for old Internet Explorer 7 and 8 and made IE9 and IE10 run a lot faster and in standards mode. Now we also have support for Opera (Next) and the editing experience is in general very nice across all the major browsers. Performance is up across the board.

We have added free hand image scaling to the Visual Editor, where images are physically scaled on the server, making it easy to embed huge pictures in your content while keeping download sizes to a minimum.

We also added a new "block selector" feature to the Visual Editor which – compared to its humble size – bring a lot of power to content editors. In addition to the classic element options (headings, paragraphs, lists etc.) and styling options the block selector enables you to create larger canvases with specific styling like multi column text flow, highlighted content boxes, embedded aside columns and similar.

Behind the scenes you get a nice clean div, blockquote or aside etc. with a class on it and web developers can customize these options to fit the design requirements of the website using standard CSS.

Please note that the block selector feature is not yet available to Internet Explorer users – we hope to have IE back at 100% feature access again in the next update.

Another feature focusing on the non-coding user is Page Template Features – a set of content/markup blocks that can be used across the website layout templates which you can edit isolated in a markup or visual view. These are great for changing things like the phone number in a page footer, replacing a menu widget or reconfiguring an image carousel without having to open up the more code intensive and complex templates.

Page Template Features are an optional and non-obtrusive concept that will allow non-coding users to own more of the website layout elements, without leaving their comfort zone. Some web developers may also fancy the feature as a nice way to segment and reuse common content blocks in templates.

Small tweaks like "type to search" in select boxes, new widgets for URL input and one click XHTML field support in the data type designer all help make the user experience in the C1 Console nicer still.

Out of the box support for tools like Twitter Bootstrap, LESS CSS and Razor

We have created a brand new set of starter sites based on Twitter Bootstrap and LESS CSS, running on top of either Razor or Master Pages, depending on your favorite flavor.

As always you can build up a site from bare bones, use other template frameworks or templates you have created earlier, but these new starter sites bring the modern, responsive, mobile friendly and easy to skin templates of Twitter Bootstrap right to your doorstep. If you are not a ninja web designer you should find the starter sites more useful than ever.

The starter sites also ensure that the hallmark styling of Twitter Bootstrap like wells, info blocks, quotes etc. are available to you right in the Visual Editors thanks the new "block selector", making it very easy to add richer styling to your content, in tune with the website styling.

Thanks to the use of LESS you can skin and customize to detail using either your favorite LESS editor or one of the online Bootstrap resources like theme designers and downloadable skins.

Especially the Razor flavor of the starter sites make it very easy for people familiar with HTML to adapt templates to their liking – even if you have never seen the Razor syntax before you will feel immediately at home when you open up a Razor based page template in Composite C1.

All in all the starter sites bring in a more modern platform that is much easier to customize.

Template engines reassembled

We have taken the XML based template engine from our 3.2 core and the Razor and Master Page engines from the CompositeC1Contrib project by @burningice and re-assembled, re-tooled and expanded the bits.

The result is the freedom to work with Razor, Master Pages or XML when building layout templates and a pluggable framework allowing us to easily absorb new view engines in the future. All this technology was available before, but not always in a fully coherent and nicely tooled way. Now it is.

The Razor and Master Page template are entirely file based (a .cshtml or .master file) which lets you create, edit and delete templates from within Visual Studio (or other favorite IDE) with no need to access the CMS backend. This makes it a lot easier to be a developer, integrate with code versioning systems and deploy changes.

We have also released a Visual Studio extension that lets you create boilerplate code files directly via "Add new item …" into the appropriate folders.

The whole editing experience is also supported within the C1 Console with decent syntax highlighting, good compile feedback on save and tooling to make it easy to create and manage templates.

This doubling of tooling have been made to ensure that both the developers preferring the Visual Studio experience and the DIY HTML hackers who edit via the browser feel right at home, have good tooling and don't exclude one another.

Default support for rich C1 Functions built with Razor or Web Forms

The Razor Functions and User Control Functions from the CompositeC1Contrib project also made it into the core. The essential features are intact and just as awesome as ever - we just added API tweaks and a lot of tooling to provide a seamless experience – again focusing on both the Visual Studio users and the HTML hackers.

The Functions perspective in the C1 Console has full support for editing Razor and User Control files with syntax highlighting, compile feedback on save and skeleton code for new functions making it easier to tweak and expand website features in Composite C1 without having to be a trained ASP.NET developer.

Users wishing to use Visual Studio or other IDE can do so without having to register anything in the CMS backend.

The new core support for Razor in both layout templates and C1 Functions also allows us to focus entirely on Razor in the C1 Packages you can install on your site – this transition from XSLT to Razor in our feature packages is already well underway.

More of the HTML5 goodies

We have ensured that the different template frameworks on the web can be copied to Composite C1 more seamlessly and that things like document types, HTML5 video, canvas, SVG etc. is working as expected.

The rendering engine in Composite C1 demands that the content flowing through it is well-structured – a requirement that enables some of the hallmark features of Composite C1. This strict approach would occasionally clash with developers using constructs that are normally fine in HTML.

To add the needed relief we have been addressing discrete areas and making small tweaks which ensure that a development flow can happen uninterrupted and with good system feedback. As a collective these tweaks make Composite C1 an even nicer system for a web developer to use.

  • If you have unstructured or unsafe markup you need to output, you can easily isolate it from the rendering core by writing <![CDATA[ … ]]> around it.
  • If you save markup containing HTML entities like &nbsp; and &copy; will would upset the strict XML requirement in the rendering core, we automatically handle this for you.
  • Should you have multiple features running on a page that duplicate things like script or CSS includes, we filter out the duplicates.
  • We ensure your script tags are never self-closing.
  • We ensure you can work with XML namespaces and get your custom markup delivered as intended, making it easy to use things like SVG and even embed whole SVG documents into an HTML content area.
  • If you add attributes to any content elements' <body /> node, we lift those attributes to the rendered page, like we have been lifting <head /> content since day 1.
  • If you make changes to a CSS or LESS file we ensure that the Visual Editor will load the updated styling at the next startup.
  • We added two new C1 Functions that will output the final pages title and meta description, making it easy to create templates that pick up on titles and descriptions from sub-features, making the need for specialized templates even smaller.
  • If you by mistake created bad markup we show a very nice message, showing the markup and highlighting exactly what is wrong with it. It code is involved, we show the source code, exception details, line number etc.
  • We have added tooling in the Visual Editor allowing the user to create block elements with classes you control with CSS and some XML elements.

That's almost it

The overall theme of the improvements described above has been "templates, HTML, ASP.NET tech and related tooling" and they are all leading to a much more 'lean and mean' CMS for web agencies and web developers. But while our primary focus has been on these areas we have added a lot of other enhancements.

Things that make it easy to enforce HTTPS in the C1 Console, host sites on Windows Azure and Azure Websites, scale out on premise, build new .NET based providers for Composite C1, integrate with ASP.NET Sitemap providers, read and filter log messages, use Composite C1 in code versioning systems and more.

At the same time we have been active on the feature packages for Composite C1, building and releasing packages that leverage the new tools in version 4 that are easier to style and fit in perfectly on a Bootstrap based setup.

We have also been busy updating our documentation online to match this latest release.

Build your next website on Composite C1

As with all our releases we are super excited about this one – it brings some much needed love to the ASP.NET developer community while widening the door and making it easier to get started with Composite C1. Web developers who know and love modern web technology should feel they have a friend in our CMS and performance and stability is better than the next open source CMS out there.

Build your next website on Composite C1 and let us know if you agree!