My Open Source Drupal Developers Toolbox


Lately I've been doing a fair amount of Drupal training, and one question that repeatedly comes up is "what tools do I need to work with Drupal". The following is a list tools that I use (on my Windows XP machine) while developing Drupal sites. Most of these tools are open source, and all are free.

Firefox - Besides the fact that this open source browser is the biggest threat to Microsoft's death grip on the internet browser business, the main reason that I use Firefox is the array of Add-ons available.

Firebug - This little plugin, which shows you what HTML and CSS is giving a page its look and feel, has become my best friend. I use this tool to "borrow" design ideas from other sites, and to troubleshoot my own design implementations.

ScribeFire - This is just a simple WYSIWYG editor that pops up and lets you easily apply html. I use it when adding a lot of links, but mainly I use it to try and coax my clients away from using one of the WYSIWYG Drupal modules, which slow sites down to a maddening degree.

Greasemonkey - This little script doesn't do anything on its own, instead it acts as a one-stop-shop for an array of user created scripts. If there's a task that you are doing over and over again, check and see if there's already a script that does it for you. For example, I find this Drupal.org module browser history to be very helpful when I'm looking for modules, regardless of the fact that I use CVS to download most of them (more info on CVS below).

Filezilla - You could really use any FTP browser, but over the years I've found this to be the best.

MiRC - If you want to unlock the mystery behind what makes Drupal so great (in a word: community), this is a quick way to do so. You can use any iRC client, really, and then make your way over to #Drupal, #Drupal-Support, and, of course, #Drupal-Dojo, to find the Drupal folks chatting, helping each other, and making Drupal (by far) the best CMS.

Putty: Though I don't use putty a lot, there are times when I need SSH enabled command line access, and you might too, in which case Putty is a really small and easy tool that does the trick.

Notepad++ - This great little tool is a must for working with codes, whether that code is CSS, PHP, HTML, etc.

Gimp - If you get tired of buying or stealing Photoshop, but you need an easy way to edit photos, this is the tool you're looking for. There are a ton of plugins that can extend its capabilities as well.

Advanced Drupal Development:
Localhost. At some point it becomes an absolute necessity to develop sites on your computer regardless of your internet connection or access to a clients hosting environment. To do this you have to create a hosting environment on your own computer that allows you to run Drupal straight from your machine. The one item you have to have is PHP 5 (don't even bother with 4- you won't be able to use a few key modules, such as panels, and PHP 4 is officially getting killed off next year). You can use other databases and web servers but the most widely supported are the Open Source applications MySQL and Apache. If you're like me, you also feel a bit more comfortable browsing phpMyAdmin, than executing SQL commands from a command line client, so you should download and install that too. There are a few videocasts that can help as well from Lullabot and Dudertown (now known as the Art Lab - Drupal School)

Cygwin - It won't take long after you start building Drupal sites that you'll run into a problem that requires patching, and in order to patch you're going to need this program. Lullabot has a little videocast that can help with this as well.

WinCVS - Drupal uses CVS for version control of all of its components, and if you want the latest versions of Drupal, modules, and themes, you absolutely have to get used to "checking out" from CVS. For more information on checking out from the Drupal CVS repository, see this section of the Developing for Drupal handbook. You'll also need to install Python, and point your CVS installation to the Python dll located in your Sys Directory (for XP users that means C:\Windows)

Besides applications, there are also a few websites that I find invaluable for developing sites. I'm in the process of creating a list of useful sites, but these are really Development tools, housed on another site.

Validate your work: Before you send a site live, you should really head over to W3C validate your CSS, HTML, and XML (your rss feeds).

Browsershots - Until I found this little too I had to beg friends running Mac or Linux to check the way the site I was looking on in different browsers. Now all I have to do is submit a job to this site and it will show me how my site looks on 14 different browsers.

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

More information about formatting options