A question of Themes/Style Packs for Perch

Late last week we asked on Twitter,

How would you feel about the ability to (optionally, always) drop in Perch-managed design themes?

We got a range of responses from a definite No, to those who would love to create themes for Perch – you can view a range of reactions on Storify.

However we think “themes” might be a bit of a loaded word, and conjures up the thought of the tangled code inherent in a WordPress theme. Or systems that require you to build your entire site into a theme rather than the Perch way of building a site and dropping in a CMS. So this post is to explain a bit more about what we were thinking about and asks for your feedback.

Our target audience for Perch has always been professional web designers and developers. The sort of person or company that crafts a site for each client, rather than using a template. Those designers and agencies were the people we always had in mind for Perch. That drove our approach of giving you complete control over the mark-up, and avoiding a complex theme system that might force you to design in a certain way. This audience will always be our primary concern as we develop Perch.

Making Perch easy to use and implement however, had the side effect of bringing us a brand new audience. We have seen people who offer a very low cost template driven service to small businesses based on Perch; we have customers who do web design as a hobby and are using Perch to create a site for a club or team they are part of. We now have customers who range from those who don’t really know any HTML right through to very experienced developers.

We have no intention of trying to be “all things to all people” however we are pretty successfully looking after all of these different customers at the moment, and if there are ways we can support one set of needs without making the experience worse for another group we would be crazy not to consider it.

Where the “themes” idea came from

We have been working with Laura Kalbag on a set of “example pages” and also designs for the example pages that go with our official apps. The idea of these example pages is that they would give new users of Perch, and people who learn better with examples to tweak, a starting point. This is something we are often asked for.

In building the example pages, the question was raised in terms of how do we deliver them. We could just zip them up with some instructions on where they go and leave it at that, but that then left the issue of how we deal with the individual CSS for the official apps (which uses common elements from the example pages) and whether we could better bundle this stuff for those who want it. In addition, it has been rather fun creating the example pages and we thought that some of our experienced Perchers might like to create themes themselves – perhaps even to distribute. We then got into the problem of making it easy for less experienced users to use these example page packs.

What do we mean by themes?

The first thing to note is that we absolutely do not intend to change the way Perch works. You will always be able to hand craft your site and drop in Perch tags.

The approach we were thinking of taking is to essentially have a simple way to drop in a pack of CSS plus JavaScript and images if needed, and call these into your site in a Perch-managed way.

How could themes be useful?

An obvious use for themes is providing fully worked CSS along with some example pages so that someone could create a site from a template. We think there would be a market for people to start creating and selling Perch themes to the customers who would like to use them.

If you do offer a low-cost template type service to some clients then you could use “themes” to make that process simpler.

There are other more subtle uses for this. If you tend to include some default things in your sites – for example a certain JavaScript library, reset or normalize stylesheet, a framework or some basic styling for certain elements you could include these as a “theme” and then build your site as normal.

As Perch would help you manage how the code is included into your pages, a more advanced theme could also minimise your JavaScript, or compile your SASS or LESS into CSS, too. There are lots of possibilities.

Perhaps “theme” is the wrong word

We’ve always described Perch as “not needing a theme” and we are a bit concerned that customers might get the wrong end of the stick when talking about themes. Perhaps something like “style packs” would be more appropriate?

Over to you

Now we have described the problem we are trying to solve, please let us know your thoughts.

We’d be most interested in whether you would use this, or if you can think of alternate uses we haven’t covered here. Also, can you see any potential downsides that would cause you a problem – assuming that we won’t change the default behaviour of Perch, this would be there if you wanted and free to ignore if not.

In addition, let us know what you think we should call this feature, so it doesn’t cause confusion.