Hi,
well after 3 months working on and off on this project I’m happy to present DrupalSN.com (Drupal Social Network) to the Drupal community.

Only local images are allowed.

What is it?

DrupalSN is essentially a Drupal showcase both in terms of the site itself and also as a place where Drupal developers and designers can showcase their Drupal projects all in one place. I hope Drupal developers and designers will use the site as a way to gain exposure to complement their portfolio

It’s also meant to be a bit of fun where people can interact and see how Drupal can effectively be used for a social network.

I hope the site can complement Drupal.org and Drupal Groups in a fun and different way but ultimately the goal is to promote Drupal!

How was it done?

It’s running on Drupal 5 and a completely custom theme which was designed from the ground up. I’m no designer so feel free to comment on the design I’m sure it can be improved!

Key Features

I’ve tried to include all the standard social networking features like buddies, profile information, content commenting and profile commenting. I choose to make the user profiles users rather than nodes purely because of personal preference although I am using usernode.module to provide a community search page.

User status ala Facebook
You may have noticed I shamelessly copied the Facebook “is” status functionality in a custom module I made allowing users to keep each other updated with what they are doing using a quick status message.

Profile visitors
This is something I developed for another personal site (http://adrenalinehub.com) that I wanted to clean up and use again. It displays the last X amount of people to look at your profile and it aims to link users together.

Profile Completeness
This is another simple custom module which that calculates a users “profile completeness” based on the number of profile fields they have filled in and the number of blank ones. This module also provides users with a TODO list of things which they can work through in order to complete their profile and get the most out of the site.

Guide Profile Setup
This is another custom module which initially guides users through the process of setting up their profile. I noticed this is quite common on other community sites so thought I’d give it a try.

Role based sign up
If you sign up to the site you’ll notice I have 3 different types of user that you can sign up to be depending on how you use Drupal. Drupal was absolutely perfect for this type of sign up. I used autoassignrole.module, logintoboggan.module and a small custom module to create this functionality.
Also if you have tried the site you may notice that different user roles have different profile fields to fill out. To achieve this I used a hacked version of the user_types.module (I need to clean this up then I will release it under a different name) and also used a patch to the profile.module (I do not advise editing core modules unless you fully understand the implications) to allow a multi select profile form item, see http://drupal.org/node/29901#comment-342818.

Projects showcase
In this part of the site users who signed up as a Freelancer or Company can submit their Drupal projects for the rest of the community to see and rate. I hope that freelancers and companies will use it as a place to showcase their work to potential clients and for clients to find suitable Drupal freelancers or companies to work with.
I made the project submission form a bit more user-friendly by overriding the form theme and adding some ajax loading icons.

Drupal World
This is a non-community part of the site where I’m simply using the simplefeed module to grab Drupal news/RSS feeds from various sites around the internet. A list of feed providers can be found here http://drupalsn.com/site-credits.

The site opens up more once you’ve signed up so I hope you’ll consider signing up and having a look.

If there is any functionality you noticed that I’ve not mentioned here, feel free to comment below and I’ll try and answer.

Modules

A full list of modules used can be found here http://www.drupalsn.com/modules_used.php

The key modules used on DrupalSN are:

Views, CCK and ImageCache
These provide the base of the content on the site, with CCK creating the node types and views being used to display content lists and a search facility.
Imagecache is used for all image rescaling and crop throughout the site.

Messaging and Notifications
I’ve used the Notifications framework to allow users to subscribe to each other, so they are updated (via email) when a user they are subscribed to adds a new project.

Simplefeed
This module provides all the functionality for the Drupal World part of the site, it handles the grabbing of the external feeds and creates them into nodes.

Again if there’s functionality on the site and you like to know what module(s) I’ve used, just drop a comment below and I’ll try to answer.

Why I used Drupal

Well I couldn’t not use Drupal for a Drupal community but I honestly wouldn’t considering using anything else anyway. The access control system works perfectly for the role based system I wanted and the modular nature of Drupal means I can easily and rapidly build new modules and functionality as the site (fingers crossed) grows!

What next?

  • First of all I hope that a lot of the Drupal community will sign up and give it a try, I’d really like to build up a directory of Drupal companies and freelancers that will prove useful for anyone looking for a developer.
  • Once the bugs have been ironed out I want clean up a lot of the modules and give them back to Drupal.
  • I'm also hoping to create a docs section of the site where I will document how certain elements of the site were created as well as create a tutorial section to the site that will specialise in social networking techniques.

Ok, I’ve probably bored everyone to death but I really like reading site write ups so hopefully this will be useful to some out there. Please feel free to sign up to the site, test it and let me know any feedback or if you find any bugs.
If you really like the site here are some badges to help promote the site http://drupalsn.com/promote.

Thanks for reading

ps. i've inserted an img tag of a screen garb if you could change the input filter that would be great!

Comments

Well, stupid me i completely forgot to include the link to the site!

http://drupalsn.com

Tom
______________________________________________
http://drupalsn.com - Drupal Social Network
http://tomswebstuff.com - My Portfolio

______________________________________________
http://themelize.me - Premium Drupal & Web Themes

How are you enabling Adsense. I've asked before in other forums (without answer) about difference between just dropping adsense script into a block instead of using module. What are trade offs.. I am believer in keeping modules to minimum if possible so would rather just drop adsense into block. TIA

Hi,

@ Road Runner
Yeh i also like to keep modules to a minimum where possible. I tried out the adsense module(s) and like them so i kept with them.
Main difference with using the module is theres no copy and paste of code, so once you get your adsense publisher ID and set up channels (optional) you don't need to go into adsense to set up new ads as you can change ad size and style all from the modules admin area, which i think is a plus. aside from that the module lets you setup click tracking which is essential but a nice feature.
theres also an revenus sharing module for adsense i although i'm not using it allows you to get your users earn for you and for them, correct if i'm wrong there.
so all in all i personally think the adsense module(s) outweigh the copy and paste option.

i am planning to move to the advertisement module in the future (used it on a site at work and its really nice, good views interaction too) as it lets you use adsense, affiliate copy/paste code and custom ads, might want to check that out too http://drupal.org/project/ad

Any other comments on the site?
thanks
Tom
______________________________________________
http://drupalsn.com - Drupal Social Network
http://tomswebstuff.com - My Portfolio

______________________________________________
http://themelize.me - Premium Drupal & Web Themes

Hey man,

great concept and very well executed. Going to sign up for sure:)

Henrik,
3520 Interaktiv
www.3520.no

Henrik,
3520 Interaktiv
www.3520.no

Tom, thnx for response, I guess I'll go check this stuff out. On another note do you use Google Analytics and just drop that in or hard code it into page template or do you use module?

Road Runner, i just hard code in the google analytics on most my sites, that seems to do the trick.
cheers
Tom
______________________________________________
http://drupalsn.com/user/thomjjames - My DrupalSN Profile
http://tomswebstuff.com - My Portfolio

______________________________________________
http://themelize.me - Premium Drupal & Web Themes

As I know adsense modules didn't take a lot of capabilities, so you can use them without any aware.

i am trying to work on same kind of website using drupal. is there any flow or steps that you can help me while configuring the modules. Please let me know. thank you

Very cool site. Will most definitely be signing up! Would love to get my hands on those custom modules you made for an upcoming project of mine and im currently working on a module that will allow users to build a descriptive mood based on 1 - 4 emoticons rather than the usual single emotion. Great work! =)

Thanks for your kind words i look forward to seeing you both on the site!

@infuzion
Which modules are you most interested in? i want to clean some up and release some back to Drupal, perhaps i can prioritise which ones i release first if that helps!

More comments would be great!
what would be greater is if the site and write up where deemed as good enough for the frontpage? maybe i'm pushing my luck :)
thanks
Tom
______________________________________________
http://drupalsn.com/user/thomjjames - My DrupalSN Profile
http://tomswebstuff.com - My Portfolio

______________________________________________
http://themelize.me - Premium Drupal & Web Themes

Can you share the small custom module for the different role of registration and the customed user_types.module .

Thanks. :)

I've taken your request upstream. The write up would need more detail to be truly front page worthy, including some of the following:
0. The reason behind using D5 instead of D6.
1. Any challenges you faced along the way.
2. How you resolved them.
3. What you would do differently if you were to redo the project again.
4. What you find odd about Drupal core when tackling the project.

As you have used many custom modules, you can release them as an install profile rather than each as an individual module. Especially if you expect them to work in harmony which seems to be the case.

You already know this, but great work. The site can only get bigger and better. Rock on!

---
Dee
iScene.eu :: UK Drupal Consultancy

Hi Dee!
Thanks for looking into my request and your kind words again! i'd be absolutely ecstatic if this made it to the frontpage!
i'm more than happy to improve the write up, but how should i resubmit the write up?

exciting times, thanks for your support!
Tom
______________________________________________
http://drupalsn.com/user/thomjjames - My DrupalSN Profile
http://drupalsn.com/drupal-tutorials

______________________________________________
http://themelize.me - Premium Drupal & Web Themes

I would just submit it as a new post since the front page is ordered by date and you'd show up way down the list. Once you have a post that is ready for the front page, file an issue in the webmasters queue to have it promoted.

Michelle

--------------------------------------
See my Drupal articles and tutorials or come check out life in the Coulee Region.

I'd be curious to know how you setup the profiles. Whether it was the core profile module or a third party module? Is the layout done via .tpl templates or laid out using views?

-- Edit --

Oh and course time frame to build?

"The only way of discovering the limits of the possible is to venture a little way past them into the impossible. - Arthur C Clarke"

Hi,

@bzshow
i'm going to clean the modules clean up and release them as soon as possible, so i'll keep you posted on here.

@xguardianx
The user profiles are set up using the theme using .tpl and by using blocks. i made two block regions within the the user profile and just assigned blocks to those areas.
i'm using views for the buddies list and projects list.
the whole site took 3 months on and off to build, keep changing my mind with the user profiles which held things up abit.

Keep the questions coming.
Tom
______________________________________________
http://drupalsn.com/user/thomjjames - My DrupalSN Profile
http://tomswebstuff.com - My Portfolio

______________________________________________
http://themelize.me - Premium Drupal & Web Themes

Profile management is often a topic of debate when it comes to social networking sites and Drupal. I think DrupalSN is the first one I've seen using the core profile module in such an effective way. You noted in your list that you use both image and imagefield. Was there any reason behind this? If so, how were they implemented?

"The only way of discovering the limits of the possible is to venture a little way past them into the impossible. - Arthur C Clarke"

Hi xguardianx,
thanks for your comments about the profile module useage.
Yeh i've noticed that too, seems strange as i'm not using the image.module gallery type module just the CCK imagefield although my list of modules seems to suggest otherwise.
On the image side of things i'm using the new imageAPI and imagecache 2 for resizing and the imagefield for the uploading of images.

keep the comments going!
Tom
______________________________________________
http://drupalsn.com/user/thomjjames - My DrupalSN Profile
http://tomswebstuff.com - My Portfolio

______________________________________________
http://themelize.me - Premium Drupal & Web Themes

I am an extreme newbie and I've read many Drupal nodes, and listened to many videos. Yet I can't figure out how you were able to construct your profile page, mostly with what seems to be blocks, or maybe views, not sure. Meaning, each block looking feature has it's own content, but same design, which looks really nice. Please point me in the right direction on how to create the block looking design, with different info, on the same page. Sorry if this is basic, but I'm killing myself over here. Drupal 5, and a ton of 5 modules loaded, and still no luck. Just a starting point would be nice ie: views, panels, image, blocks, content type. I will learn, just not sure which class to sit in.

Hi,
i'm planning to write a proper tutorial on custom user profile theming in the coming weeks but here are a few things you can check out in the meantime:
http://drupal.org/node/35728 - Customising the user profile layout
http://drupal.org/project/user_profile_theme - module that helps tweak profile CSS code

I also just wrote a tutorial on adding custom regions to your theme and it uses the same principle as i used for adding the blocks to my user profiles, have a look http://drupalsn.com/drupal-tutorials/custom-drupal-theme-regions
leave any questions/comments on that page and i'll get back to you.

Hope this gets you going
Tom

______________________________________________
http://drupalsn.com/user/thomjjames - My DrupalSN Profile
http://drupalsn.com/drupal-tutorials

______________________________________________
http://themelize.me - Premium Drupal & Web Themes

What script do you use to generate the list of modules used? I do it manually on socnet but it gets out of date a lot.

Nice site, btw. I've been running socnet since January but I don't have much time to do anything fancy with it. It's more of a demo of what you can do just with using modules as is.

Michelle

--------------------------------------
See my Drupal articles and tutorials or come check out life in the Coulee Region.

Hi Michelle,

Sorry for the delay in replying i only just noticed your question.
I'm just using a simple bit of code (below) to query the database and display a list of all active modules:

<?php
include_once './includes/bootstrap.inc';
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
//query database
$i = 1;
$result = db_query('SELECT * FROM {system} WHERE status = 1 AND type = "module" ORDER BY type ASC, name ASC');
$o = '<div style="font-size:1.2em; font-weight:bold; margin-bottom:20px;">Active Modules used on DrupalSN.com as of '.format_date(time()).'</div>';
while (
$m = db_fetch_object($result)) {
 
$o .= $i.') <strong>'.$m->name.'</strong> ('.$m->type.')<br />'.$m->description.'<br />-----------------------------------------------------------------<br /><br />';
  ++
$i;
}
print
$o;
?>

hope that helps

socnet is real nice, i'd never seen it before, gonna have a play now!

Tom
______________________________________________
http://drupalsn.com/user/thomjjames - My DrupalSN Profile
http://drupalsn.com/drupal-tutorials

______________________________________________
http://themelize.me - Premium Drupal & Web Themes

I'll give that a try next time I do some work on socnet. I don't know about "real nice" LOL! It's not as fancy as yours. It's meant as a demo of what Drupal's SN modules can do pretty much right out of the box. There's very little in the way of customization, and that's on purpose. But it also means the site is rather boring.

Michelle

--------------------------------------
See my Drupal articles and tutorials or come check out life in the Coulee Region.

thank you very much for the write up, didnt understand a lot of it, but i will be reading and studying it carefully to learn.

Forgive me if I missed where you said this... Being distracted by kids here. I finally got around to signing up and I love the multi page signup. How did you do that? I haven't attempted any multi page forms in Drupal. I don't know if you looked at advanced profile at all since you're doing your own thing there but it comes with a ton of fields on the profile node which makes for a horribly long form. I've been looking at ways of making that more user friendly and I really like how you have it set up where you can save or skip to the next step.

Michelle

--------------------------------------
See my Drupal articles and tutorials or come check out life in the Coulee Region.

I too would love to find out how this is achieved.

I have just signed up (http://drupalsn.com/user/timmillwood) and think it looks great.

You should release all your custom modules and create an install profile.

----------------------------------------------------------------
IB Community Theme http://communitytheme.ibo.org
Spun Designs http://www.spundesigns.net
Millwood Online http://www.millwoodonline.co.uk

I suggested the same thing above

I think it would be easier to maintain a single install profile rather than 10+ new modules.

---
Dee
iScene.eu :: UK Drupal Consultancy

After my latest blog post (http://millwoodonline.co.uk/blog/is-drupal-too-general) I am on an install profile quest!

----------------------------------------------------------------
IB Community Theme http://communitytheme.ibo.org
Spun Designs http://www.spundesigns.net
Millwood Online http://www.millwoodonline.co.uk

subscribing

I love some of the features in this, particularly the Guide Profile Setup which I've wanted to achieve for ages, but wouldn't know where to start. I really like the "To Do" List as well. I would ask for how this is done, but expect it might take some time to explain. Looks great.

My new EasySnoozing, Nursing and BusinessEgghead websites on D7!

Great site! I would like to see more showcases like this. I'd suggest to add some more categories. Media sites would be better than magazines.

================
http://www.westki.info
http://www.vilniusblogs.com

Hi everyone,

Quick site update
Anyone interested in the modules i'm using on the clean can keep up-to-date with the release of the modules on this page: http://drupalsn.com/drupalsn-modules
I'll be updating the page regularly as modules are released.

I've also recently released a new section of the site called Learn Drupal: http://drupalsn.com/learn-drupal
Learn Drupal contains tutorials, a questions & answers section and links to useful resources.

And anyone interested in the tutorials planned for the site can stay up-to-date here: http://drupalsn.com/drupalsn-tutorials

Thanks
Tom
______________________________________________
http://drupalsn.com/user/thomjjames - My DrupalSN Profile
http://drupalsn.com/drupal-tutorials

______________________________________________
http://themelize.me - Premium Drupal & Web Themes

I'm really curious about your profile module.

On the users profile page, did you use cck? How did you implement the tabs on the edit page of the profile? Is this done through the standard drupal profile module?

Thanx a lot for sharing your thoughts and modules...

http://www.lievenscomputerservice.be

Looks awesome. It is VERY nice of you to make a whole list of modules that you used. That looks like it took some time itself.

the lies!!

Hi,

Thanks, i'll keep things updated here as i release modules from the site.

Regarding the profile setup. It's the standard profile module and user based profiles rather than node profiles. but i think it might be easier to do this with node profiles now, at the time i didnt know much about node profiles.
The tabs are produced by views and by other user related modules using their hook_menu and the style is all css, here the code if you want to check it out:

ul.primary {
  border-collapse: collapse;
  padding: 0 0 0 0;
  white-space: nowrap;
  list-style: none;
  margin: 0;
  height: 23px;
border: 0;
}
ul.primary li {
  float: left;
}
ul.primary li a {
  background-color: #e3e3e3;
border: 0;
  height: 22px;
  margin-right: 0.3em;
  padding: 0.4em 1.7em 5px 1.7em;
  text-decoration: none;
color: #999;
position: relative;
}
ul.primary li.active a {
  background: #ffffff;
  border: 2px solid #cccccc;
color: #333333;
  border-bottom: 4px solid #ffffff;
}
ul.primary li.active a:hover {
  background-color: #fff;
  border: 2px solid #cccccc;
border-bottom: 4px solid #ffffff;
color: #000000;
}
ul.primary li a:hover {
  background-color: #e7e7e7;
  border-color: #ccc;
}

Feel free to ask anymore questions here or in the sites Q&As section (http://drupalsn.com/learn-drupal/drupal-questions)

Thanks
Tom
______________________________________________
http://drupalsn.com/user/thomjjames - My DrupalSN Profile
http://drupalsn.com/drupal-tutorials

______________________________________________
http://themelize.me - Premium Drupal & Web Themes

Subscribing

Hi,

Just a quick message to say i've done a small update to the site and added a few new features.
I've Done a full write up if anyone wants to check out whats changed @ http://drupalsn.com/node/2995

Cheers
Tom
______________________________________________
http://drupalsn.com/user/thomjjames - My DrupalSN profile

______________________________________________
http://themelize.me - Premium Drupal & Web Themes

Hello thomjjames,
Love the site you did a really good job on it. I am curious to know how did you advertise your site? I checked your page ranking in alexa and you have a pretty good page rank of 58,995.
What did you do to advertise your website?

After all this time, I see that the site is improving a lot.

Thanks for the great writeup.

---

Travel to Peru

--
Samir Perez
Sumaq Peru Travel SAC
Peruvian Travel Agency and Tour Operator

Hello

Great work, i like to know how do you achieve the recent login users, or recent users activity, i try to build with view and user node module and set criteria to last login, last access with no success, anyone know a solution? i visit many website that use this fonctionalty

Thanks

how can we change the color of the banner. as drupalsn.com did. you can see this in the menu right side in this site. can any body suggest how to do that...

Hi Tom,

I think your site is great. Please on your people, project and companies pages how did you design the columns? Did you use a particular module to get it arranged that way or did you use code?

Hi,

Great site but i've stumbled on a problem. I've signed up to your website and tried to answer somebodys questions and i keep getting a error message stating "Your submission has triggered the installed spam filter and will not be accepted." I've simply posted text only and entered the correct captcha. I've tried this a few times and simply felt frustrated though i was trying to help someone. Crazy..

SA1 Web Solutions
www.sa1websolutions.co.uk

Nice site! How were you able to overlay the icons on avatars?

Hi Tom

Love your site. I have been looking into converting my community portal site into something like this and need some help. I tried contacting you via the web form but it keeps saying there's a validation error even though I've tried multiple times to fill in the captcha. Please contact me at sunny_at_ehangar_dot_com.

Hi Tom, is there an Installation Profile available for this drupal configuration?

freaking AWESOME. good job.

Hi,

Been awhile since I posted this, brings back memories :)

Anyways, I'm at that point where I can't take DrupalSN any further because I simply don't have the free time I used to (I'm a Dad now :)) so I'm very much open to offers to take over the site over as I really really want it to progress and move forward, even if that means I'm not or less involved.

The site has over 8000s members now so is a great resource for finding Drupallers all over the world and I really want that to continue.

If anyone is interested, wants to know more or has any ideas, I'm all ears: thomjjames@gmail.com

Thanks
Tom

______________________________________________
http://themelize.me - Premium Drupal & Web Themes