Developing the Anahita Social ™ Discussions Application

A social website often needs to have a discussion board either as a stand alone social app or as a part of other social hubs such as Groups, Events, Organizations and such.

In the quest for finding a simple and organic design inspiration for developing a discussion board for the Anahita Social Engine I have been snooping around in different projects.

There are some existing forum extensions available for Joomla. In fact we did try ccBoard and realized that with some modifications to make it work with the Anahita Social Engine user profiles, it would work perfectly. So here is one good candidate.

We have also been using PHPBB3 for Tazzu Community and it seems like a complete forum out of the box and the UI is pretty good although I’ve found it to be a little too bulky for our purpose. We want something much more nimble and lighter. Besides, the user management in phpbb3 and the way it has been coded is not really our style so we’re not too sure about this one!

I must admit I have been fascinated with BBPress for quite some time. This is the discussion board app developed by the same folks who developed WordPress and these guys have a nice touch when it gets to getting the usability right.

Why BBPress?

BBPress is quite simple:

  • There are a list of Discussion Boards
  • People create topics within discussion boards
  • People tag topics as they go so a tag cloud grows as the discussion board grows
  • Replies are posted on every topic by the community members

One of the great things about BBPress is that it relies a lot on folksonomy. That means people could create topics and tag them as you go. This is a quite handy and organic concept since the community will takes control of organizing the content in different taxonomies as they go. I know from our experience with Tazzu we’ve always wondered that what categories we should be creating and whether they’ll be used by the community members or not.

Even asking the community before hand won’t help since they won’t have much clue until they are about to post a topic. So Tags are always nicer than categories that are created by the discussion board administrators.

BBPress has already been used in Technorati , 9rules and the same design has been used my other favourite project the BuddyPress plugin for WordPress.

BuddyPress Forum

BuddyPress Discussion Forum is almost identical to BBPress

Looking at all of these available options we finally decided to develop a discussion board ourselves that works seamlessly with the Anahita Social Engine’s API by getting some inspiration from the BBPress user interaction patterns.

Anahita Social Discussions

Anahita already provides Content Nodes, commenting, and taxonomy/folksonomy APIs. We’ve figured that they’d be essential for developing collaborative CMS like applications such as Blogs, Wiki, and of course Discussion Boards. In fact the BBPress model works perfectly with the Anahita’s design philosophy:

  • Nodes become Topics
  • Topics can be tagged using folksonomy
  • Comments become reply posts left on a topic
  • Social Engine already provides user profiles

Anahita Social ™ Discussions Data Model

Anahita Social ™ Discussions Entity Relationship Diagram

We just had to bake a BREAD (Browse, Read, Edit, Add, Edit) to manage a list of Discussion Boards which can contain a list of topics and add some features to make the whole system behave as a decent discussion board.

Anahita Social ™ Discussions - Alpha
Anahita Social ™ Discussions – Alpha

Anahita Social ™ Discussions - Topic
Anahita Social ™ Discussions – Alpha

This picture may look like a shameless imitation of BBPress, but trust me you can skin it anyhow you like. I’ve just followed the BBPress html just to put things together quickly, although in this cross pollination what’s underneath the skin is actually quite different:

  • Data Model is unique to Anahita in fact it is using Anahita’s nodes, comments, and tags instead
  • it is MVC code and contains much less code than BBPress
  • uses a lot more AJAX than BBPress does

Anahita Social Discussions is developed as a Joomla Component “com_discussions” and after installation it can either be used directly with the com_socialengine and it also provides APIs so it can be included as a part of another applications for example Groups, Events, and Organization pages.

I have managed to build the Alpha version of this app in only few days using the simple to use NookuFramework and Anahita API and I am hoping to roll out the Beta version in few weeks.

5 Replies to “Developing the Anahita Social ™ Discussions Application”

  1. In the last few weeks I was looking for a wiki and forum solution for my new site and it seems I don’t need to search any more, because I found the perfect solution: Anahita Social Discussions! 🙂 I’m so excited, can’t wait to install the first public release. Keep up the good work guys!

  2. Sounds good 🙂

    Just would like to add that this application requires Anahita Social Engine to be installed. All the Social applications such as Discussions and Photos will be available through the Anahitapolis support and distribution website under GPL license to the members.

  3. I look forward to this extension, you guys should bear in mind that some of your to-be-customers would want a migrator in place. Something that can help migrate users from either Jomsocial/Community Builder/Joomunity.

    Keep the good work progressing.

  4. Outstanding progress. Beyond the migration from social/community components, a forum migration tool from Kunena/phpBB/SMF2 to the native Anahitapolis would also be very much appreciated.

Comments are closed.