The Best Drupal Modules

Ok hold on, rewind, back up a little there....... What the heck is Drupal, and what are these modules you want to tell me all about. Here's a quick overview:

Drupal is a free, open source, content management system. Put simply, its a platform you can build websites on. The modules are like simple bolt ons that enhance what it can do.

Here is a list of the modules we use most frequently. It may help those new to Drupal find the best solutions, without having to trawl through piles and piles of other modules.

CCK
CCK or the Content Construction Kit is the daddy of all drupal modules. It's purpose is to allow you to add custom fields, or various types, to any drupal node.
So for example, say you wanted to let users submit videos to your site. You would simply create a new content type called videos, then add a cck file upload field, or better still an embedded media field. And now your input form has a field for adding videos.
Views
Views is a module that lets you view things. The title's a bit of a give away really. So what can you view? Well, pretty much anything, in any way you'd like. For example, build a google map of user or story locations. Build a list of users who have not posted in the last x days. Add filters and arguments to these views. Display your images in a gallery or slideshow. The choices are virtually limitless. The interface takes some time to get to grips with, but the power it gives so outweighs the learning curve.
Auto Node Title
This is a relatively unknown module, but it does a nifty little job. It automatically gives your content a title. Most things come with a logical title... a news story, a book, a page, etc. But sometimes you get things that don't, like a screenshot, a geo location, a twitter post, a football result. Auto Node Title lets you pick what part of the content you want to use for the title. So for the footy example, it could combine, teams and scores from the content, and give the node a title like "Arsenal 6 - West Ham 6". Saves the user having to input that data twice.
Facebook Connect
Facebook Connect lets you register for any drupal site using only your facebook credentials. We all know it's a royal pain to remember log ins for umpteen different sites you visit. Make life easier for your users. It's not obligatory for those that don't have facebook.
Google Maps
Google Maps lets you integrate googles excellent mapping service directly into your website.
Whether it's a simple "Find us here" map, or a location based search, this module just about covers the lot.
Google Analytics
Anyone not using googles excellent visitor tracking service? You'll be hard pushed to find anything that does the job better. This module just simplifies adding the tracking code to your pages.

Simple News
There are countless excellent mailshot, newsletter applications out there, like mailchimp.com. But they all seem to charge. Drupal has a niftly little module called simple news that lets you administer sending out emails to members, which has nearly all the functionality of the paid alternatives.
mailhandlerMail Handler
Mail handler is a way of adding content to your site via email. If you are adding quick blog entries, what simpler way than to just blast off a quick email to a preconfigured address.
It also has support for forum subscriptions, and threaded replies, inline attachments and taxonomy category mapping.
Feed API
Drupal comes with a built in function called aggregator. This periodically checks RSS Feeds and imports that content to your site as news. Feed API is aggregator on steroids! It lets you customise just about every aspect of your imported feeds, where they go, when they update. There's not much you can't do with feeds using feeds api.
Notifications
Want to notify your users about things? Want your users to choose when they get notified, and opt out if they change their minds, this module handles all of that. Best of all it works with the messaging module, so you can set exactly how they get notified, email, private message, sms, twitter, etc.
Organic Groups
The name of this module put me off using it for a long time. I just couldn't work out what it did and why I'd need it. I could easily make groups of users just using the profiles settings.
Then I tried it..... This module should be called, sit back and let your users tailor your site to their own needs module, or better still, the Delegation module. You get complete control over who does what initially, then let them go wild. Choose who can set up a group.. Bang, they do, then they invite people to it, Bang those people are creating content, posting comments. The group grows, your site grows and develops naturally, organically even, oh ok then, it's a good name for the module really!
Path Auto
This is a S.E.O. must! Path auto lets you take any part of a blog entry, or news story, or any other content type, and automatically define the friendly URL for that content. So rather than my little articles link being "Medden.co.uk/node/67432" it's nicely named "Medden.co.uk/best-drupal-modules" Which google and other search engines love.
Uber Cart
People pay big money for e-commerce. It's big business. Most Open Source offerings at online shopping are appallingly outdated and incredibly complex to work with. I know, I've tried OSCommerce and its friends. Drupal has the excellent UberCart module, which handles all major payment methods right off. It's pretty simple to configure and administer, certainly a lot less confusing that most online shops, and it will mean your users get a made to measure shop, not a one size fits all amazon clone.
2 Way Video Chat
This is a module I'm looking forward to trying out on a new project. Video on the web is great. But it's usually a one way process. YouTube have sown up the consumer market pretty well.
But now apple have added facetime to their iphones, and as more and more people start using skype. Laptops, PC's and even monitors all come with webcams. Face 2 Face video chat is going to take off in the next few years for certain.
This module allows you to run and configure your own video chat server, no need to rely on third party infrastructure to host anything.

If you can think of any other module you couldn't live without in Drupal, please mention them in the comments below.