06 Jul 2012

The current design of the Symphony website is a couple years old now. We’ve had plans to overhaul it over a year ago that never really came into fruition. That is not to say that we haven’t been working on it, though. The challenge as it turned out was defining exactly it is that we wanted to achieve with our new website.

The rest of the article examines the key requirements the new site and how we intent to go about implementing it. While I would've liked to have posted this article alongside a surprise launch of the new site, truth be told, we still have a little ways to go yet. Instead of keeping quiet about all the exciting plans for several more months, I thought it's better to lay it all out.


While the current Symphony website doesn't seem overly complex, it’s actually quite a beastly thing. The intricacies of the site doesn’t come from its content structure, but rather the integral relationship strewn between site members and practically every other aspect of the system. It also doesn’t help that the member system happens to be an early private build of the Members extension. The Members extension we know of today is eons (literally eons in Internet time) beyond the version the site uses, to the point where the two extensions don’t share much code DNA with each other.

At one point we decided to first update the website’s internals and look at overhauling the whole thing later. But that idea turned out to be a giant can of worms. You see, most of the site's data sources and events are custom and work specifically with the ancient members extension. The customisation was required to provide a layer of member access control. This was when our build of Symphony didn't have the necessary hooks to externalise access control at the component level.

The need for simplification really got us on the path of thinking about creating a new website from the ground up.

From Space Mountain to Airbus A380

The current Symphony website was to designed to function like a family theme park: all the rides in one convenient location (minus the teacup ride. I hate the teacup ride). However many of the key functions of the site has since moved over to more appropriate venues. Symphony's core repository and issue tracking is now handled by GitHub. Extension repository is handled by Nick Dunn's funkgasmic (sounds dirty...and it is) site. Two more Symphony related websites was introduced recently that was born out of the need from the community: by Mark Lewis and by Marco Sampellegrini and Stephen Bau.

Our plan for an all-in-one theme park simply isn't a realistic reflection of how our community works. Our new Symphony site must embrace and endorse more Symphony related sites, and keeping it all in-house is just going to stifle growth. If our old design mentality is akin to a theme park, our new design philosophy is like an international Airport--a hub for connecting flights to all manner of destinations around the world.

Symphony Network

So we've established that for Symphony: theme park bad, airport good. But how do we deal with the glaring issues that come with having all these disparate Symphony sites? To ensure that both site discovery and user experience isn't compromised by this new paradigm, we came up with the idea of the Symphony Network.

The idea behind the Symphony Network is simple. All network sites will have:

  1. an universal navigation bar that will allow users to jump between network sites
  2. an unified look and feel that is consistent with the main Symphony site
  3. API access to the main Symphony site. i.e. fetch showcase or membership data.

We plan to offer a Symphony Network template site in the form of a publicly available Ensemble. Any community member could then make a site and submit it for inclusion to the Symphony Network.

Plans for the new Symphony website

While the Symphony network will likely off-load a good portion of the site's current functionality, there are some key elements that will remain intact.

The new website will keep:

  • Symphony's marketing spiel. Content will be streamlined and likely restructured to be contained to a single page
  • a membership system and will additionally allow option for GitHub authentication
  • the community forum. The forum system will be overhauled with some better moderation features
  • community showcase. We're adding a way to allow members to turn simple showcases to proper case studies

The new website will offload:

  • the Symphony core repository, which is currently handled by GitHub
  • Extensions, which is currently handled by
  • XSLT Utilities, which will be handled by a new and improved
  • documentation will be split into its own Symphony Network site. This allows the evolution of the docs site to improve faster than the main site

The new website will add:

  • an aggregated view as the community's default page that will pull in updates from the forum, announcements, showcases, etc.
  • a Symphony certification system that allow members to go through an automated process (akin to Google webmaster verification). Certified Symphony members will get a badge that will show up on discussion forums, etc.

Domain change

A couple years back, Craig Zheng, our ex-resident benevolent community godfather and working group taskmaster bought the domain and has kindly donated to the Symphony project soon after his departure. Our plan was to change over our primary domain over to the new one when we release the new overhauled Symphony website. As you might have already noticed, the new domain is now in effect but the site remains the same. For the sake of a smoother transition, the decision now is to introduce the domain first and make sure all the link structure remain intact, then gradually migrate indexed links out to the appropriate network sites. This is a much more sensible approach than to uproot the entire link structure once the new website paradigm is introduced. The goal is to minimise service interruption as we roll out the new sites.


Symphony is supported by the gracious contributors from the community to help keep the project running. Below are people who has taken the initiative to help with the website side of things:

The new Symphony website design and development is currently headed up my yours truly. The Symphony docs site is currently sitting with Brendan Abbott. His plan is to workshop it with Nick Dunn during his stay abroad in London. The Symphony Network design is in discussions with Nils and Johanna Hörrmann. The site is headed up by Marco Sampellegrini. We also have Rowan Lewis who is putting up his spare time to work on site development.

While I think we've got the basics covered, I think it's evident that we can do with more help. If you are willing to lend a hand, please don't hesitate to let us know!


Now that sounds like a plan. Looking forward to it.

Wow! Looking forward to it! Thanks!

This sounds terrific!

  • Lewis
  • 07 Jul 12, 10:27 am

Well, you know I'm on board :)

  • YesNo
  • 18 Jul 12, 3:03 am

What are you looking for in the way of help?

You know I'm here to lend a hand Allen, let me know what for.

Lots of exciting developments.

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details