Yesterday, Eric talked about how feature servers can help organizations manage and update features on different of sites and I pulled together a screencast of an initial proof-of-concept. While we’ve been talking about these ideas in the office for a while, the actual implementation is very new and I was surprised at how quickly it went – in all, the feature server took less than a day to build.
Here’s a look at the feature server with a prepackaged theme (more on that below):

What it does
- Lets you create projects and releases and manage them by hand on a Drupal site.
- Produces an update XML feed compatible with the update module in core.
What it doesn’t do
- Version control integration and automated packaging. The project module does an awesome job of this, and if you’re serious about tying your features into VC it’s what you’ll want to look at.
- Anything with dependency / build management systems (a problem that Adrian Rossouw and others are spearheading in the community).
- Info file based parsing, dependency detection, and display.
The ingredients
Adrian pointed out to me that this very simple version of a feature server could be a feature itself. It turns out he was right – it is largely generic site building with some additional custom components:

Exportables/Defaults
- Node types: Project, Release
- CCK fields to capture the metadata that the update XML feed needs
- Views: Projects, Releases, Update XML
- Context: project section
- Menu: project menu link
Code
- Views style plugin for generating the update XML
- Views field handler for generating an md5 hash from the package file (needed for XML feed)
- A little glue code to smooth things out
Adding lipstick and polish to the pig
The recipe makes for a pretty tight install profile – very few dependencies (Context, Features, CCK, Filefield, Views), add in a few helper modules (Admin, Diff), and you’re ready to go. Our goal is to have you adding your first projects/releases and branding out your feature server to fit your company, organization, or identity on a lazy Saturday afternoon.
To that end I’ve started work on a simple and minimal theme that allows for Twitter-like style customization – limited, but effective. You can choose from a set of predefined/prepackaged styles or get creative with your own background and color (more settings to be added soon).


We hope to get this in your hands in a few weeks – hopefully in time for you to start sharing the features you build for another project we’re working on.