How this Site was Built

Anonymous's picture

The new Consortium website was created entirely in Open Source.  As my way of giving back to the community, I'm going to document the entire process.  If you're trying to build your own community site, this is a handy reference.

Host

I used HostGator because they're highly regarded in the Drupal developer community.  During development, I sometimes ran into a memory limit.  HostGator lets you edit the php.ini file, but not the memory limit.  Still, it doesn't block Drupal module update checks (the way Powweb does) and I think it'll be perfect for a low-impact community site.  Also their servers run Linux and they use green electricity.

HostGator comes with FantasticoDeluxe to ease Drupal installation, but you won't want to use that if you're using Drupal Commons (see below).

Drupal

The web design company Acquia has released a collection of Drupal modules called Drupal Commons.  This turns Drupal into a groupware platform.  There's an older project that does the same thing, called Atrium, but I prefer Drupal Commons' feature set.  You'll want to download the Drupal Commons package and install Drupal that way.

The biggest problem with Drupal Commons is it's ugly.  I picked a free theme called Danland from the Drupal theme repository.

Here's a list of additional modules I added:





  • Casetracker
    • I created a custom View to display list of projects --> embedded as block in OG home page
    • Another custom View to display list of cases --> embedded in project node using http://drupal.org/project/viewfield
  • CKEditor: Drupal Commons comes with FCKeditor, but CKEditor has better control over whether it appears on any given text field or not.  This is important because other parts of the site have strict limits as to whether they'll handle html or not, and this site needs to be user-friendly.
    • imagebrowser for uploading images
    • You still FCKeditor as a dependency.  It's a bug that's being worked on, but in the mean time just leave the module activated and ignore it.
  • Facebook share: I used to use "AddToAny," but let's be honest, Facebook is the 1200-lb gorilla.
  • Flickr: I've used internal galleries on previous sites (my favorite is Gallery2, and it has great integration with Drupal), but this is not a photo-heavy site.  I prefer to have another provider do the heavy lifting of photo hosting, plus Flickr has some nice social networking features I want to take advantage of.  There are other Flickr integration options for Drupal, including Embedded Media Field, but I've found that it currently doesn't actually work with Flickr, so never mind.
  • simplenews for the newsletter - I've used this module before and I love it.  Simplenews requires mimemail.  I also added Simplenews Template, to make it easier to send newsletters with a fancy header and footer.  Hot tip: email clients don't like CSS.  See this: http://groundwire.org/resources/articles/css-and-email-newsletters
  • rsvp for a home-grown evite solution, which requires htmlmail.  Kind of annoying to have two simultaneous solutions for html emails, but they seem to coexist just fine.
  • xml sitemap for SEO purposes
  • Autosave - conflicts with Strongarm and the Acquia modules require Strongarm.  There's a patch here: http://drupal.org/node/850934
  • Several custom views, CCK, panels, blocks, and CSS including:
    • "Affiliates" CCK database with different views
    • Custom front page layout
    • Custom "donate now" block which disappears on database pages (so it doesn't block data), and uses a custom CSS style so it can live in the side bar without a grey box around it
  • I also used several outside sites:
    • Twitter
    • Facebook
    • Flickr
    • Blip.tv: This site lets you upload long videos (over an hour) for free, with no advertising, and embed the video in your site.  I've hosted internal videos on other sites before, but it's a pain and you shouldn't do it unless you have a good reason.
    • Twitterfeed.com to automatically propagate news to Twitter and Facebook feeds.

Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer