Last week Development Seed launched Open Atrium, an "intranet in a box" that acts as a foundation for developing custom team collaboration and knowledge management tools. Drupal's strength as a framework and its strong developer community are clearly the reasons we love Drupal, but in this post I specifically want to focus on how installation profiles and the Features module have allowed us to create a tight out of the box experience for Open Atrium.




Installation Profiles
The Open Atrium package for download can be set up through a simple Drupal installation profile. Installation profiles are a mechanism for packaging and deploying Drupal based applications very efficiently. Although they were initially introduced in Drupal 5, there have been a number of factors that have negatively affected the developer acceptance of Installation profiles in the Drupal community. Lots of energy right now is focused on fully unlocking the power and flexibility of installation profiles and subsequently growing the range of Drupal distributions available to Drupal users. With the work on Drupal 7, we are confident we can reduce the learning curve involved in the development of installation profiles and make them simpler to write than ever before. Adrian Rossouw's post titled "Fix some conceptual problems with install profiles and make them actually usable" is the place to go to read about the details.

Now, add the Aegir project into this once you have your installation profile set, and Drupal shops and other organizations could offer a pretty awesome service for clients. We just recorded an example of Aegir being used to squirt out Open Atrium sites to our cloud infrastructure. The Aegir project is entirely open as well and under active development. You can expect it to only keep getting better thanks to the hard work of its contributors.

Features
Open Atrium installs with six "features" out of the box: a blog, a wiki, a calendar, a to-do list, a shoutbox (aka microblog), and a dashboard. What makes Open Atrium really powerful is that you can add additional features yourself. This is all possible because the "Features module" allows you to capture and manage your site configurations in code. Individual features are just meta modules – exported defaults like views, imagecache presets, contexts, content types, cck fields, and so on. To see how features work, you might want to check out this screencast on "Making and Using Features", and read a recent blog post about how exporting configurables can help address basic staging --> deployment issues. We are currently working on documentation on "How to Build a Feature" specifically for Open Atrium.

We think the "feature" thing is a big deal, perhaps most of all because the features paradigm allows for sharing of features that can be turned on easily by end users, rather than offering them a set of modules that require some know-how to set up and configure. In the future, it will be possible for Drupal shops and other organizations to run "feature servers" that allow them to share niche features with the world. Organizations would be able to set up their own feature server behind their firewall to support their internal networks of sites, and they could also go public with those features when ready. The best way to visualize what feature servers might look like is to look at Young's recent blog post on Distributed Feature Servers in Drupal. We also blogged about what it could look like to get a new feature from a feature server.

We will be blogging more about feature servers in the next couple of weeks. If you are working with Open Atrium there is a lot moving over on github, and we're looking forward to seeing you in the issue queue. If you want to get involved, check out the video intro below and download the code here.

Background
Open Atrium started as our own intranet solution about three years ago, and our whole team has worked in different capacities to update and grow it to the point where we realized others could make good use of it too. We have bootstrapped the project all the way through development.

Comments

Wow its really a great job, Good themes also, thanks

Was planning to work on something similar i'm really happy to see more and more intranets and Project management done with drupal i really love what i see (not tested yet) asap will try it and feedback.

Thanks a lot ;)

The out of the box theme bundled with Atrium is very slick and makes Drupal look, well, not like Drupal much at all! Great beta release.

Wow really good job. I been fiddling with other open source groupware packages like ProjectPier, and I always thought that Drupal would be perfect for this. I never been able to find a well developed UI module package in Drupal that works nice enough so that non-web users will be able to use it. The theme here is very simple and clearly easy to use and see, and I got to say you went with the perfect idea with the similarities to Basecamp in the design. It just works for a groupware app.

Jason Maggiacomo, Senior Web Developer/Designer @ Humber College (Toronto, Ontario)
Portfolio: Nextrix.net | Latest Drupal Project: MinecraftTextures.com

I literally had my mouth wide open after installing this. This is an incredible project and execution, looking forward to playing with it more.

After tests all i can say it's pretty awesome and surpass a lot of commercial intranets, for sure there's some things to fix for my part i've just noticed one problem there's no option for adding a specific period (hours and minutes) in the calendar.

Looks good, i'll try

ufoloji.net

i'm very impresed by this project. it's the first "distribution" of drupal on my radar, i think that's the best way to go to give a focused usergroups a ready to use product.
there is lots of potential along this way for drupal. i'm thinking of ubercart for example.

i have installed Atirum. really its amazing drupal work..

thank you everyone for these work,drupal and openatruim.
thank you ~
all u r geate people~

awesome work,good level of customization,
Great job buddy...
Thanks.

awesome profile.....
really amazing work.....

Amit Patel
-Drupal Website Developer

Creating events with open atrium is great. I love the fact that all one has to do is click on the date in the calendar and the event creation form pops up. What would it take to get such functionality in regular Drupal website. Excellent stuff.

It is very good platform for team collaboration!

And Drupal is great to!!!! Because now it is an base platform for new open source and popular projects!

Let's learn sources of OpenAtrium!!

Good design :)

And at the bottom of a page here are a funny advertisement of chilly sauce :)

The execution of this project is simply stunning. From my limited time with it, I'm really loving the design and UI. Excellent work all around.

... how Drupal goes expanding and expanding.

Thanks Development Seed for sharing this.

Learning for Module Developer Status

It's so great!

Atrium is really a mature user centred solution.
The current release is stable enough to be used in production context.

Congratulations !

1. In a group i want to post a post which should be only visible(posted) to particular user(s) which i select from "Notification" panel. Is this possible?
2. For group administrators "Audience" panel is not showing in the right hand side.

This is a great release, and it will further showcase Drupal as a true enterprise tool for organizations. I'm excited to learn more about deploying features as well.

Congratulations!

Is this a fork of casetracker? If not, if I a change is made to CaseTracker would it eventually make its way into OpenAtrium?

Great, I will try this.
Thanks.
JK

Good question. Case Tracker is almost "anti-agile development" and I'm interested to hear if and how other agile shops are using it.

We've been adapting it for our agile workflow since the D5 days are now reimplementing our changes in Atrium. The beginning steps are to use "cases" as tasks, use "projects" as user stories and create a "sprints" site- or og-wide vocabulary.

On another note, I'm frustrated that this "conversation" is in a forum several steps removed from the Atrium website or a Atrium-dedicated forum. The GitHub issue queue is not a forum.

update: there is now an Open Atrium group on groups.drupal.org.

I don't think it's a fork. Considering the massive jump in casetracker users when OpenAtrium was released, I figure that the module is included as is. Which should mean that update would be part of future updated installers.

Yes, you're right. I asked Eric Gundersen about this last weekend at DrupalCamp in Los Angeles and learned that development that happens at GitHub does go upstream to the Case Tracker project here on Drupal.org. The Case Tracker feature in Atrium adds things like additional Views but those are in a different folder and leave the Case Tracker module untouched.

Thanks for the confirmation and additional details.

Ridiculously good Drupal work. A dream of Drupalness.

Drupaling along...
Run Bike Canada

Damn! What fantastic work! I was just looking for some Drupal centered project/team management exactly like this, and here it is in all its glory!
Truly an inspirational use of install profiles and features, it undeniably flexes Drupals capabilities!
Cheers!
^_^

Fantastic. Just the kind of framework I was trying to avoid building myself (and no doubt more polished). Thanks for saving me 100s of man-hours days before I even start the collaborative research and publishing platform I'm developing (and can now leapfrog to).

Looking forward to building a feature set to add to the Atrium!

Thank you Thank you Thank you!

What a great stuff, your hard work highly appreciated, thanks for sharing!

Just a question is it possible to add modules and work with them like we do normally or it's impossible and we should step on and learn to make features ?

Thanks again for your amazing work it saves a lot of time when building an intranet :)

I think we have to learn features, though the description I read seemed overly complex.

You can add standard Drupal modules, see http://openatrium.com/developer_faq

Thanks Gábor i'm reading it ;)

im so happy because today i found Open Atrium and its awesome , what can i say... congratulations! i loved it!

Hi,
I just installed OpenAtrium 1.0 beta1 on my windows box and, even though the installation was OK, I am getting a lot of messages like these:

user warning: Table 'openatrium.context' doesn't exist query: SELECT * FROM context ORDER BY namespace ASC, attribute ASC, value ASC in D:\webs\atrium-1-0-beta1\sites\all\modules\contrib\context\context.module on line 338.
user warning: Table 'openatrium.admin_message' doesn't exist query: SELECT DISTINCT(n.nid), n.created, a.keep_new, a.php_visibility FROM node n LEFT JOIN admin_message a ON n.nid = a.nid WHERE n.sticky = 1 AND n.status = 1 AND n.type = 'admin_message' ORDER BY n.created DESC in D:\webs\atrium-1-0-beta1\sites\all\modules\contrib\admin_message\admin_message.module on line 107.

Apparently at least a couple of tables are missing... or am I missing something?

My status report says:

Drupal 6.13
Access to update.php Protected
Configuration file Protected
Cron maintenance tasks Never run
Cron has not run. For more information, see the online handbook entry for configuring cron jobs. You can run cron manually.
Database updates Up to date
Drupal core update status Up to date
File system Writable (public download method)
GD library bundled (2.0.34 compatible)
GD library bundled (2.0.34 compatible)
IMAP Not found
Mailhandler requires that PHP's IMAP extension is enabled in order to function properly.
Module and theme update status Out of date
There are updates available for one or more of your modules or themes. To ensure the proper functioning of your site, you should update as soon as possible. See the available updates page for more information.
MySQL database 5.0.67
PHP 5.2.9-2
PHP memory limit 128M
PHP register globals Disabled
Unicode library PHP Mbstring Extension
Update notifications Enabled
Web server Apache/2.0.59 (Win32) PHP/5.2.9-2

So, apart a few module that need updating and missing IMAP functionalities, I think that my setup is not that bad...

Do you know how to fix it, or do you know where I can report this problem?

I installed on a different XP box the same .tgz file I used in my first test, and everything went OK. Apparently an installation can go wrong without raising any error but, apart from this, the downloaded file is not that bad :-)

Now I can start to test OpenAtrium!

i'm having the same exact problem. can anybody shed some light?

First off, I think OA is a great! contribution, thanks a lot for your work on this :)

Though, I am experiencing an issue with file upload permissions. User files are hosted using 600-file permissions (means, there is no chance in opening them). Upload mode is public btw ... It might be related to this issue http://drupal.org/node/203204 but I am not sure about this. Anyone els experiencing this problem?

What's with the © 2009 Development Seed at the bottom of every page? What exactly are you claiming copyright on? Just the theme? The artwork in the theme? The content in the distribution? All of that and more?

It's really confusing since the copyright statement is in the Site Information. Are you claiming copyright over this specific configuration of Drupal? If I modify this and distribute it, do you feel I am violating your copyright?

In the COPYRIGHT.txt you do state "All Drupal code is Copyright 2001 - 2008 by the original authors", but don't elaborate about what the © 2009 Development Seed refers to. If you are going to include a copyright statement of any kind, it would be helpful if you were specific about what you are trying to retain ownership of.

I'd really like to know the answer this... If we modify and redistribute (commercially or not) - do we need to retain your original copyright tag?

I reposted these questions in the Open Attrium group and an answer was supplied.

See this thread --> http://groups.drupal.org/node/36312

This looks really interesting and possibly just the sort of thing I'm looking for. Will have to give it a test drive.

Why did you choose GitHub? This must be the worst bug tracker I've used online in a long time. Logging in takes you to the front page instead of returning you to your previous location. I wrote a reply to an issue and hit the button to save it - it took me to the login screen and asked me to login even though I only logged in about 5 minutes earlier. Github's UI is awful! When will Open Atrium issues be tracked with.... Open Atrium???

I've installed it on two separate sites in the past week and I'm eager to learn everything about it and use it for as many projects as possible.. well, those that require such a package :-)

Great, Congrats to Dev Seed.
I have been following this project from a while.
We are currently using a modified version of rockclimbr aka basecamp clone for our projects and was waiting for open-atrium's release :)

clap clap ...the theme looks great, and will look into the features/installation profile indepth

I really like Development Seeds slogan "Putting tools in the hands of world changers".

Powerful stuff!

-----------------------------------------------
The Future is Open!

Hi this looks great!
I can't seem to find the video intro link though..
Greetings, Martijn

Holy god the themes are beautiful!

There is now an Open Atrium group on groups.drupal.org.

I keep putting in known good details for the database name, user and password and keep coming back to the same screen. Logs show install.inc failing on line 187, which is

if ($fp = fopen($default_settings, 'r')) {

and the default settings file is, as far as I can tell, settings.php, which does exist in sites/default

php5.3 centos 5.9 lots of ram, mysql, don't know what else is relevant

Dave

it seems that default.settings.php is checked at install time as well as settings.php. As soon as I copied settings.php to default.settings.php the install worked.

Dave