The port of Commons to Drupal 7 will begin shortly so I think it is time to start some discussions on the theming aspects. Probably the best way to begin would be with me giving my opinions and then we can go from there.
I have spent a lot of time working in the themes of Commons and the biggest thing I would like to get away from is the use of contributed base themes. These base themes are built to help out developers and people that are not very good with laying the correct DOM structure and writing clean css. One of the problems with them is that you become locked in to building the way the base theme creator has in mind. Which isn't correct for all situations. Currently in Commons there is the Fusion base theme and then the Commons Roots base theme and finally the theme that you choose for your site. If you lost count, that is 3 themes being used to display the site. The nightmare for anyone theming is that you have cases where you need to overwrite a css style that has been defined in 2 other themes and that gets terribly ugly after awhile.
My vision for Commons would be that it would have its own custom tailored base theme that handles the specific needs of Commons. The Commons base theme would be strictly structure coding putting the elements in the correct position in the DOM. Then the main themes would be styling themes that are mostly css and maybe a few templates here and there to handle any structure changes. That way whenever anyone wants to build a new theme they are not fighting styles that were applied in base themes, making it a whole lot easier to use the styles they want.
By making the Commons themes more lean and efficient we can start to do some very cool things such as making the site responsive. How great would it be for a person to able to download the Commons distro and instantly not only have a community running, but being able to access it on any device, looking great and being fully functional.
As I said in my first paragraph, these are my opinions and the direction I would like to see Commons on Drupal 7 go. What are your ideas? What do you like or dislike?

Comments
great story of sustainable development - i am overwhelmed
hello dear ay13, many many thanks for this great outline
i am pretty new to Drupal & Commons - but with only 10 weeks being familiar with both - i have to say. Drupal commons is a great product and i am very very happy with all i know..
And i look forward to the next steps of sustainable development. All sounds great and inspiring! I look forward to the next steps and i am pretty sure that you have friends all over the planet... Hundreds and thousands
Keep us in the loop !!!
I love Drupal Commons !!
greetings unleash
I agree with ay13's approach
I agree with ay13's approach to the theming. I like the idea of Commons having its own custom tailored base theme that handles the specific needs of Commons.
Re: "Then the main themes would be styling themes that are mostly css..."
So, if I installed a contrib theme - like Gardening (http://drupal.org/project/gardening) - then that would be a "styling" theme? Would there be a chance that some themes could mess up the layout?
R
Not as easy as dropping contrib theme in
You couldn't simply drop a contrib theme in and expect it to work, the classes and id's used for styling would probably be completely different. But, if you know what you are doing, you could remove the templates from the contrib theme so the base theme's templates take over and change the css to match the corresponding classe's and id's in the Commons base theme. This would get you pretty close to replicating the contib themes look in commons.
Fusion, Omega etc
the leading base theme ecosystems seem to be Fusion and Omega and I think its a mistake for Commons to go its own way with its own base theme, leaving those behind
instead, I think it would be better if Commons had a base theme that could work on either Fusion or Omega
also, Sweaver and FontYourFace should be integrated... Livethemer is a good example also
Acquia Commons led the way very early with integration and themes around the social user stories, I'd like to see that continue, I think instead of locking down and tightening up, Commons should expand out and integrate more
we don't need monolithic distro's, we need interchangeable and modular distro's
I'm not a themer but ...
my limited knowledge of themes leads me to agree with niccolo. Doesn't Omega /Delta + context have the responsiveness and flexibility that anyone would want? Adding some other tools (as mentioned by niccolo) also helps. It seems (to a non-themer) that integrating Commons D7 with a stable, well-tested theme reduce the chance of problems in the D7 version.
I guess the key questions are: 1) how much do you think you can improve on what is already available and in what time frame? 2) Does it make sense to integrate with Omega (not as much work as creating from scratch) AND create a new theme - then give users a choice on what to use?
Great post and feedback
AY, great to have this discussion and feedback! Responsive design and Mobile-first are clearly going to be important for Commons!
From the corporate intranet point of view
When we started searching for a Drupal distribution to be used in our intranet I found many blogs with a comparison between Commons and OpenAtrium. One of the features that I thought was a point in favor of Commons was the "declared" (?) possibility to use contrib themes or at least to choose between some included in the distribution while OpenAtrium had a fixed theme.
I'm not a theme programmer, and I cannot spend time to customize the theme.
But for an intranet web site, having the theme compliant to the corporate identity style is important.
For this reason, and for some other, we choose Drupal Commons.
But, as said by AY above, it's not easy to add a contrib theme and we decided to use "Commons Connect" which colors are the more close to the ones of our company.
We also tried change the logo image with our logo that has a size of 270x55 px with the result that all the layout became a mess. Solution? We decided to use the theme standard logo.
Then we need to face the Internet Explorer 31 css limit.
In our organization, with more than 3.000 PC's we use Internet Explorer 7 or 8 for compatibility with other business applications, and because of the 31 limit, we need to activate the css optimization in the drupal's performance settings.
But to be able to use this setting we need to set the download method as "public" instead of "private" (in site configuration --> file system).
For us the "private" file system would be a must, but we cannot use it otherwise Commons doesn't work with old IE and for this reason we cannot push the use of Commons to store confidential data. We use it only for "soft discussions".
Conclusion:
It would be great that Commons
Last: I don't think it's a theme problem but we do not have to forget the commons is used in different languages, non only in English.
Username alias
I think username need to be hidden. For security reasons it's a must.
In place of the username an username alias must be displayed
As discussed in http://drupal.org/node/912462 the theme need to be compliant with this feature
Bootstrap?
Maybe it would be good to consider some themes (Sasson, 965 and Boilerstrap or Twitter's Bootstrap) as inspirations for what could be done for the Commons theme.
Some of the features are:
Maybe also add support for the Omega theme, which is responsive and the Stanley admin theme which uses Twitter Bootstrap UI kit and integrates well with modules such as Admin (already used by Commons), Media, Views, Rules, WYSIWYG, etc.
There are many modules that help with these and could be used as inspirations as well (or used on Commons as modules):
I agree that base themes can
I agree that base themes can be a springboard to accelerate development, but that they are not the de facto starting point for all development.
A base theme should provide tools such as normalization (though normalize.css), a grid system and a framework to produce coherent responsive styling. It should not dictate font styling, padding, borders and color. These will always be overridden or one should at least assume so.
A base theme makes best practices easy, but it doesn't enforce them.
Commons should strive to be
Commons should strive to be compatible with most themes from drupal.org (such as http://drupal.org/project/corolla etc.), why introduce a dependency on designers with having a custom base theme for Commons?
****Me and Drupal :)****
Clickbank IPN - Sell online or create a membership site with the largest affiliate network!
Review Critical - One of my sites
Base theme vs. custom made
While I would like to support using some popular base theme, base themes are in most cases made with broad of use cases in mind, and therefore may be not 100% suitable for specific use i.e. community site..or the way distribution (UX) is configured..
BTW, Corolla is based on http://drupal.org/project/adaptivetheme base theme.
Folks at Phase2 are using Omega as base theme for their OpenPublic distribution - it would be interesting to hear more about their experiences and experience from their users..
As I read somewhere, please correct me if I'm terribly wrong, Omega is base theme suited more for developers (as framework), unlike Adaptivetheme wich is more focused to end users (just like Fusion theme, IMHO).
Acquia already had experience with using Omega theme, I would like to hear what Commons team think about this issue..
Omega
I am not a themer (diddling with css sheets isn't theming) but have been gravitating towards using Omega based themes because I have found that the tend to render much better on tablets and mobile devices. Fusion is a great platform but I from what I have read and seen I agree Omega may be the best one-size-fits-all solution.
Of course it may be also interesting to put it to the community and have more than one base theme camp on board. I'm honestly chomping at the bit because I have a site that I want to migrate from another platform into commons, have been holding out for a D7 version. I know D6 isn't going to disappear next week but lots of modules have been ported to D7 and it's now viable for non drupal coders to deploy some reasonably complex sites without having the needed coding skills.
Love the discussion in this
Love the discussion in this thread, I like the many different viewpoints.
Let's dive further into the use of base themes. Those who have used them:
What aspects of base themes helped in your projects?
What parts were annoying or unnecessary?
If you were to build your own what would it consist of?
Have you made your own that consisted of just the good parts or the parts needed for the project?
DrupalCon is in a few weeks and there will be Bof's over this subject and many more. Will anyone that has an interest in theming for disto's or theming in general be there this year? I look forward to having some discussions in person.
sustainable development
hello dear Drupal-friends,
i also love this great thread!
I am very very new to drupal -but i see that Drupal is a synonym for a globalwork: Bridging Distance, Culture & Time! The spirit of the drupal-community is one of the most impressive things i ever experienced! The Drupal group is stronger than ever before: .
It is very impressive to see how many developers and users come here and communicate & share your questions, knowledge on every Drupal-commons-matter:
And look forward to the next steps in the relase of the commons on D 7
greeting unleash
The ideal situation would be
The ideal situation would be that Commons does not need a specific theme at all. The biggest issue in theming Commons in D6 is the fact that the Commons Roots theme is required for Commons to function correctly. Ideally, Commons should work with any Drupal theme, whether it be contributed, custom or purchased from a premium theme store. Likely, pre-build themes will require some tweaks and customizations to work perfectly with all features in Commons, but using a different contributed theme should not break Commons features.
If that requirement is met, then who cares what themes are packaged with Commons? Front-end devs can then theme Commons from whatever approach they prefer for all Drupal sites they work on.
When Commons 1.0 came out I
When Commons 1.0 came out I interviewed Jay and one of the things I asked him was why Acquia chose to build Commons on Fusion and then offer a pretty simple base theme on top of it. If you're going to go with something as powerful and new-themer-oriented as Fusion, why not make a really beautiful theme to show off Commons and what Fusion can do? After all, with Fusion as the base, anyone starting a new theme would just create a Fusion subtheme anyway rather than a subtheme of the Commons base theme. Having a simple base theme contrasted with the approach Commons usually takes of being a complete out-of-the-box experience.
Jay's response was that I "spoke like a Drupal expert" (heh) and the reason they did it that way was because they thought the customers wouldn't know enough about Drupal theming to make a new Fusion subtheme and would just change the CSS of whatever the default theme was. Apparently they had strong feedback requesting they build it that way, which is strange because he also said that large companies would hire Drupal people or firms that knew how to make a Drupal subtheme anyway. I guess the original Commons theme wasn't exactly "designed for the demo."
You can probably guess that I disagree with that view. I don't think there's anything wrong with using a base theme, and in fact the discussions I was part of when I was working at Acquia were about building a new Commons-specific base theme, but I see basically two audiences here: the small, inexperienced developer, and large organizations or experienced developers. In the first case they will either go with / slightly modify the default theme or use a different contrib theme altogether (which, incidentally, Commons doesn't recommend). In the second case the default packaged themes are not a restriction on what actually gets used. So the purpose of the default theme, in my view, is to be pretty for demos and workable for people who don't know enough (or have the time to) build something different.
A final note -- Commons requires Commons-specific themes because it overrides a lot of the default styles of contrib modules for usability and consistency. Using contrib themes breaks the Commons experience. So I think it's okay to a certain extent to require Commons-specific themes. However, there are workarounds that would make it easier to use contrib themes (for example, a lot of the custom overrides/styles could probably go in a module).
D7 Commons Sprint in Denver?
Over at Ezra's DenverCon Sprint thread, there is a discussion continuing about a Drupal Commons sprint.
I thought I'd post it here in case any one wanted to join the conversation.
http://groups.drupal.org/node/199283
Mobile
It would be great to have a Facebook mobile-like theme version of Commons with a couple of menu items on top (2 or 3) and a button that reveals a larger vertical menu.
There's a nice framework that offers that, but unfortunately it's only for WordPress and Joomla.
Funny you mention the
Funny you mention the Facebook-like mobile nav system. I am about ready to release a jQuery plugin that does just that for you. I am having trouble naming it though, all the names I can come up with are not very good, underNav is the current working name. Any ideas would be welcome.
If it gets a good reception we can certainly include it in Commons as part of the responsive approach.
what bout the roll out of commons on d7
Any estimated release date for Commons running on Drupal 7!?
Look forward to hear from you
greetings
unleash
btw: Drupal gains new friends each day. In the last months many have joined us from all over the world who share our interests and ideas.
The Drupal landscape is constantly changing and has a strong community of both users, supporters and contributors. The future is very bright
Contrib Base themes D7 Usage
I realize this conversation is still about "Should we use a contrib base theme" rather than " which base theme should we use," and I'd like to weigh in on the former soon.
Here is a comparison of Drupal 7 contrib base theme usage stats:
Publicly viewable Google Docs chart view of this data.
Zen 7.x-5.x
New (7.x-5.x) HTML5 Zen theme is looking very promising and sexy! :)
http://drupal.org/project/zen (7.x-5.x features at a glance section)
There are about 1000 sites using 7.x-5.x-dev version...
My vote is for Adaptive
I know my original post on this thread was for a custom Commons base theme but I have changed my tune slightly. I have played around with the base themes in Ezra's previos post and I have to say that I am liking Adaptive.
For distros it does make since to use a well established base theme that has many other contributed themes built on it. This way any theme that is based on Adaptive should simply work. This also opens the door for a lot more contributed theme options, if you can write a theme for Adaptive, than you can write a theme for Commons. Seems win win to me.
Thoughts?
Contrib FTW
I'm also 100% for using contrib theme and not reinventing the wheel.
@ay13: Are you talking about AdaptiveTheme 7.x-3.x-dev version? As far as I can read[1] 7.x-3.x-dev version is major rewrite with Panels and SASS in focus. Sounds interesting & promising...
On the other hand, Omega is focused on Context[2] (via Delta[3])...
Although Zen & Fusion don't look as sexy as Adaptive & Omega, we probably shouldn't exclude them from the race.
I suppose there are couple of factors that we need to have in mind when evaluating which to use:
1) How theme work with Context / Panels
2) How easy is to sub-theme it - or in our case sub-sub-theme it? ;)
3) Support and maintenance responsiveness from maintainers / community
4) There are for sure some more things to watch for..
[1] http://drupal.org/project/adaptivetheme
[2] http://drupal.org/project/context
[3] http://drupal.org/project/delta
Responsive Drupal.org discussion
Interesting discussion about responsive themes, highlights from maintaners of main Drupal responsive themes: Adaptivetheme 7.x-3.x, Zen 7.x-5.x and Omega 7.x-3.x.
And from the new kid on the block: Artica.
Adaptive theme poll over here:
Here's a poll/IRC chat summary posted by webchick about responsive themes for D7: http://groups.drupal.org/node/175234
I know it's a lot of reading, but i think it's pertinent info. Seems like Omega is very popular. I, personally, have used omega, and find it to be very good!
Although I have not tried it yet, I'm excited to use Sasson for my next project. After DrupalCon Denver, I really became a convert to using Sass, and Sasson seems to be the perfect fit, with PHP compiling of the Sass files. It's also cool to see that there's support for a mobile-first approach out of the box!
Looking forward to the Beta release in July!
Issue for selecting a base theme
Thanks for link!
Let's continue discussion about selecting a specific base theme at http://drupal.org/node/1549166 :).