Blog.SpoonGraphics

Open Source Platforms for a Social Networking Website

Read the article

This post was originally published in 2007
The tips and techniques explained may be outdated.

I have just completed a personal website project producing a Social Networking site to allow for learner drivers to sign up on the site, create a personal user profile, update their personal blog and communicate with other users through commenting, friend systems and private messaging.
To begin the project I set out testing out a variety of Open Source content management systems to find the best solution, and before I knew it, I'd looked into a huge range of potential systems and thought it would be great to summarise my findings on the best contenders…


I had in mind before starting the project what features I would like the website to include, the main points of which were as follows:

  • Allow users to create their own individual profile page to display personal information and a picture of themself.
  • User profiles accessible via an extension of the learnertalk.co.uk domain. (eg. Learnertalk.co.uk/chris)
  • Blogs on a per-user basis, content of which to be accessible through the user's profile as well as being collated within the overall website.
  • Ability to browse through the site members in order for users to view each others profiles.
  • Private Messaging facility for communication between users.
  • Friend system to allow for connectivity and networking between users.
  • Allow commenting on blog entries and user profiles.
  • Photo galleries on a per-user basis.

Basically, the fundamental building blocks of a social networking website!

The next stage was figuring out how I was actually going to do it! Being a designer more than a programmer I needed something pretty self explanatory with good web based control panels for installing additional features. My PHP coding skill level is very basic, so any custom plugins were out of the question. Open Source was the only realistic choice of applications, firstly because they are free… not only to use but also to modify, plus there is a huge amount of support available.
I'd like to point out in my review that although I do outline drawbacks of certain systems, I still whole-heartedly appreciate the work that has gone into producing them and releasing them free to the public. Each application has it's own advantages over the rest when it comes to tailoring it to a specific use, but here's my opinions on Joomla!, Elgg, WordPress MU and Drupal for use as a Social Networking platform.

Joomla! with Community Builder Extension

joomla.jpg
I had used Joomla! on a couple of websites before and had come across the Community Builder extension which allows Joomla! to be transformed into a community based website. This was probably what started off my whole idea of social networking for LearnerTalk, so it was the first package I tried out.
The extension was easily installed and instantly enabled users to create individual profiles.
Unfortunately I found it difficult to find further extensions to cover all the other features I desired, although they are probably out there I soon lost interest and moved onto another package.

http://www.joomla.org/

http://www.joomlapolis.com/

Elgg

elgg.jpg
When I discovered Elgg I thought I was onto a winner; an open source application tailored specifically for social networking! The package boasted most of the key features I desired including user profiles, blogging, friend networks and private messaging. Furthermore, there was also a decent list of additional plugins available through the website.
Sadly, an unbelievable number of hours were spent trying to get the thing to work, and when I did eventually manage to get the site up I couldn't fix the problem of only having the front page working (but with no CSS styling), everything else produced an error. After browsing the support pages and reading through other peoples posts it seemed I wasn't the only one experiencing problems, but no solutions could be found.
On the whole however, Elgg still looks very promising and I'd recommend giving it a try. I think having a dedicated server is a must to allow for the extensive permissions needed.
http://elgg.org/

WordPress MU

wordpress.jpg
I came across WordPress MU after reading a blog post from Blaze New Media. Being a current user of WordPress on the SpoonGraphics blog I already have an understanding of its construction and how it works so I was quite positive when giving WordPress MU a try. The MU bit stands for Multi-User, the overall workings are almost identical to the original WordPress, the difference is MU allows for multiple WordPress sites to be created under one overall installation.
Straight away this gave an extremely powerful blogging platform for each user, with an easy to use editor and control panel. Furthermore, the extensive range of plugins available for WordPress would hopefully cover the other features needed for LearnerTalk. The down side was that in order to produce a fully functioning site a decent knowledge of coding was needed. One of the major changes needed was due to the fact that MU produces replicas of WordPress, including the whole administrative back end which could lead to users changing things they shouldn't! Also, a bit of custom theming would be needed to create the whole user profile page feature, not a difficult task for a PHP wizard though. Check out the link to Chick Speak on Blaze New Media for a great example of WordPress MU in action.
http://mu.wordpress.org/

Drupal

drupal.jpg
I recall giving Drupal a tryout a while ago, but couldn't get to grips with the 'ins and outs' so subsequently packed it in. After seeing it being recommended as a powerful CMS on many forums throughout my research I thought I'd give it a second shot.
I'm certainly glad I did; the new version 5 has some extremely wonderful features, once installed you can go into the admin section and tailor Drupal into the type of site you want by activating a number of core modules. This instantly covered the main features I needed for LearnerTalk, with additional modules being extremely easy to find through the Drupal website. The backend administration is very easy to use and straight forward with an enormous range of options.
A great tutorial over at Shell Multimedia came in very useful when it came to extending the user profiles with additional content, although the tutorial is under revision it still worked a treat for me. Other solutions were quickly found by googling 'site:Drupal.org' plus the info I required which in most cases brought up support forums holding all the answers I needed!
I'll not go into the finer details of LearnerTalk's creation, but here is a complete list of all the additional modules used to make it happen.
Buddylist
Auto Nodetitle
CCK
Contemplate
IMCE
Login Destination
Node Words
Pageroute
Panels
Usernode
Invite
Privatemsg
Profile
Members
Image
Acidfree
Views
Guestbook
Pathauto
Node Profile
Node Family
Subform Element
Site User List
Blogger
TinyMCE Editor

http://drupal.org/

The final result:

learnertalk.jpg

Join the mailing list and receive my design resources bundle FREE!

Join the mailing list to have every new post hand delivered to your email inbox. Every subscriber gets a FREE bundle of 40+ icons, vectors, brushes & textures!

25 Comments

  1. hcabbos says:

    Very good article. Is there anything you can tell us about the flexibility of the system in terms of using/designing your own template(s). Can Drupal use different templates depending on the site section? Also, did any of the modules prevent you from using the template(s) as you would have wanted?

  2. admin says:

    Hi Hcabbos

    Thanks for your response, I’ve had more experience with some of the applications more than others but I can say that they all are flexibile in terms of design with the template systems. I’d say anyone comfortable with web design and armed with the Firefox toolbar could create a custom template for any of them… previous experience of the app. would be a bonus though!

    I’m sure I saw a support thread regarding different themes per page (in fact, I had it in my bookmarks.. CLICK

    Module wise there weren’t any conflicts with the template system in Drupal, the majority of the styling can be edited via the modules own CSS file which allows finer integration.

    Chris

  3. mike says:

    Wow, excellent article, and great blog! I just found it through “Best Web Gallery” so congratulations on getting your site in that list as well. When you made this site, did you have the design already created? Or did you make it after you had done a little research as to the ins and outs of drupal? For some reason, Ive always shied away from Drupal, but reading this is making me take another look. I’ll go sign up at your site now!

    Mike

  4. Loic says:

    Thanks for this awesome article.
    I was wondering wether I was the only one on earth to have this kind of questions in mind : Why Joomla ? Why Drupal ? Why Elgg ? for SN application design.
    I was heading to a “no-answer” but you brought me some usefull light !!
    How long did you need to create the core application and the theme for your SN website ?
    How fast was your learning curve on Drupal development ?

    Thank you again.
    Cheers
    Loic

  5. admin says:

    Hi Loic

    I’m afriad I can’t remember the exact time spent, it was just a personal project to develop my skills a little.. I can say many late nights were spent on it though!!

    The design I had in mind for the site was very similar to the default theme, so I kept mostly the basic structure and altered minor aspects such as the CSS.

    As for the learning curve, I found the layout of the admin panel very straight forward and managed to pick it up quite quickly, other CMS systems I have worked with have been quite the opposite!

    Chris

  6. Loic says:

    Thanks for your feedback again !
    I’m starting right now the implementation of my social network platform.
    My “associate” and I had came to the same conclusion : Drupal is what we were looking for!
    I’ll let people know how quick it has been to start having something promising with Drupal, and I’ll give my own feedback !
    Cheers
    Loic

  7. Eric says:

    What about Pligg, one of the most social CMS solutions?

  8. admin says:

    I’ve not actually heard of Pligg before, but I’ll definitely be checking it out! Thanks for the referral.

  9. Pepe says:

    Hello,
    I just found your entry about Drupal. I tested Drupal a couple of months before but there wasn’t a bridge between Drupal and phpbb (or any other forum) so I wasn’t able to use it for my project.

    How did you managed to connect Drupal and phpbb on learnertalk? I’m really courios!
    Thanks !
    Pepe

  10. admin says:

    Hi Pepe

    On the Learnertalk site the Phpbb forum isn’t integrated with Drupal. It is basically linked to it on the same server.
    I did find a tutorial on how to combine the two but it was quite complex, otherwise I recall seeing a forum addon specifically for Drupal.

    Chris

  11. Carly says:

    Wow, so these are content managment systems for people who want to make social network sites, such as facebook?

    Wow. Would you say it was similar to working with WordPress – once you know what you’re doing it’s kinda easy?

    How did you find it to work with…do you need a lot of php knowledge or similar? I’d love to make something one day, just to play with or something! Thanks.

  12. yalamber says:

    What about phpizabi, official website http://www.phpizabi.net
    See my social network in phpizabi:
    http://www.kiratisaathi.com

  13. prats says:

    can you please give me link to download the open source for a basic social networking site to be built.
    and any feature in specific which has to be added to build an entrprenuership based social networking site

  14. Kalla says:

    I am new in PHP, i designed a webdite in php, the site is basically a social networking website, like u can register yourself, find friends, chat with them, download stuffs, and many more, but now i have a problem whenever i wants to do some change in any pages, i go through that page, do change and finally upload. Its so ridiculous for me again and again.

    I read article posted above and i realize, here i can get my answers.

    will u please help me??
    HOW CAN I CREATE ADMIN PANEL FOR MY WEBSITE
    please reply me on my e-mail id

    THANX

  15. Angela says:

    Hi

    If you are looking for the #1 social networking software then you’ll need Handshakes. Easy to install and can be modified to suit you needs.

    We offer unique templates that can be customised for your social networking site and make you stad out from the crowd. Send an email to vjames@nexlevsolutions.com with your requirements and we’ll immediately send you a quote.

    Want to know more? Then IM me at cebirim@live.com

  16. Chicago says:

    A good man would prefer to be defeated than to defeat injustice by evil means.

  17. Bob says:

    So after all this Learnertalk.co.uk is now just a forum..?

  18. Josh says:

    I use TinyMCe on one of my websites.

    How do you find it as an Editor?

    It can be a bit slow to load if the page is being served more than once a minute.

  19. VB says:

    Well, I read through this great blog before setting out on my own Social Network adventure and this is how I fared. (IT Engineer – 20 years PC exp)
    ~
    Joomla
    I started this site and was annoyed by the lack of customization and what there was wa sdifficult. The Administration was probably one of the most confusing and time consuming I have seen. I didn’t even start the Community Builder add-on after reading so many horror stories.
    ~
    Drupal
    I had my hopes on Drupal and even got the site up pretty quick, but the addons were difficult to rummage through and then modify to your needs to work, althugh I did like the manageabily of Drupal and the use of modification.
    ~
    Dolphin
    Well I have a license for Dolphin if anybody wants it.. 12 months left. After installing which wasn’t so bad I rapped my own knuckles for jumping the gun and buying the license. The different versions (AD FREE + FREE w/ADS) confused things completely as I installed and configured it 3 times before finding out I couldn’t install a paid for version and use the free modules with ads… plus if I installed the free version and then wanted to upgrade in the future I would have to install it all over again. Waste of $35 plus all the modules cost $45 each!!!
    ~
    AbleDating
    I tried to get a trial of this to use, but came across so many posts of issues and problems that after the first couple of nightmares I had I left it alone.
    ~
    Joovili
    Easy to install and config, I am using this software for a childrens social network – it’s simple and does what it says on the tin – RECOMMENDED
    ~
    Social Engine
    One word – OMG – why did I spend so much time looking around the net for solutions, installed in about 5 minutes and I was on my way customizing the template files to get the look and feel I wanted, all the modules are great and version 3 is coming out soon. I must admit the license is a lot more than you would pay for unless you are serious about the network you are starting – but try it trial it’s fantastic. As far as I’m concerned it’s the only one that gives you all you need for a Social Network, ease of management and the power to do so. The Devs are very active on the site and are listening to the needs of users all the time – GREAT!
    ~
    Hope this helps you guys avoid my pitfalls and make a decision.
    ~
    VB

  20. VB says:

    by the way.. my site is http://twang.me if you want to see what I mean – still in dev process

Comments are now closed