Development tools

Use these development tools to help you create Drupal sites faster, easier, and with less effort. If you have a favorite Drupal tool that is not listed, please leave a comment with a link to the tool, we'll check it out and add it. Or become a documentation contributor and do it yourself.

Tools for Your Browser

Tools for Editing Text & Code

Emacs and vi are historically the two most popular editors. Which is best is a matter of some debate and so before deciding which to try you may like to read this Wikipedia article. VIM is based on vi and is much more feature rich.

  • Emacs (Free. Open source. Runs on Linux, Mac, Windows and others.) (Details about configuring for Drupal)
  • VIM (Free. Open source. Linux, Mac, Windows and others.) -- Vim is an advanced text editor based on vi, but more powerful. The learning curve is reasonably steep and the interface can be confusing at first, but this is soon rewarded with greater editing efficiency. (Details about configuring VIM for Drupal)

Other Editors

  • BBEdit (Commercial. Proprietary. Mac only.)
  • Bluefish Editor (Free. Open Source. POSIX > Linux. Mac. Fast Lean multi syntax WYSIWYN editor - GTK+ based).
  • Dreamweaver (Commercial. Proprietary. Mac and Windows.) -- A WYSIWYG HTML/XHTML, CSS, PHP, XSL/T editor, and there's a free Drupal API extension for Dreamweaver.
  • jEdit (Free. Open source. Runs on Linux, Mac, Windows and others. Java based.)
  • Komodo Edit (Free. Open source. Runs on Linux, Mac and Windows.)
  • Notepad++ (Free. Open Source. Windows only.) - A light-weight notepad replacement with tabbing and syntax highlighting.
  • Textmate (Commercial. Proprietary. Mac only) -- A Drupal specific bundle is offered by Steven Wittens and another by Konstantin Käfer. Has a built-in DIFF bundle that speeds up the rolling and applying of patches.
  • Smultron (Free. Open Source. Mac only.)

Integrated Development Environments (IDE)

IDE's expand on the ability of a simple text editor. Here is a list of IDE's that work well with PHP and Drupal.
Note: There is also a Drupal Group dedicated to setting up an IDE for Drupal development. Please visit the Drupal IDE group for starter tips, and ongoing interactive discussions.

  • Bluefish Editor (Free. Open Source. Linux. Mac. Fast Lean multi syntax WYSIWYN editor - GTK+ based). A lightweight, fast, multi-syntax, IDE that supports projects, multiple documents, ftp/webDAV/sftp/http/https/samba, user custom integration with many programs like make, lint, weblint, xmllint, tidy, javac, more..., multi-language translations, etc. Just an awesome text editor on steroids.
  • Eclipse (Free. Open source. Linux, Mac, Windows and others. Java based.) Probably the most popular open source IDE. Read details including how to install and configure. Eclipse requires plugins in order to develop PHP. The PHP editing plugins for Eclipse are listed below. To get a nice "all in one" package for working with PHP in Eclipse try the Easy Eclipse PHP distibution which includes PHPEclipse as well as CVS, SVN and other common plugins.
    • Aptana (Free. Open source. Linux, Mac, Windows and others. Java based.) -- A full-featured Web Development IDE. A package based on the Eclipse environment that comes with the essentials right out of the box (PHP highlighting, ftp/sftp, code browser, etc).
    • PHPEclipse for PHP development using Eclipse up to version 3.1.
    • PDTeclipse & Zend for PHP development using Eclipse from version 3.3+
  • Quanta Plus (Free. Open Source. Linux - Part of the KDE environment).
  • Geany (Free. Open Source. POSIX > GTk+. Linux. Mac. Windows. Fast Lean multi syntax - GTK+ based).
  • Komodo (Commercial. Proprietary. Linux, Mac and Windows.)
  • Zend Studio (Commercial. Proprietary. Linux, Mac and others. Java based.)
  • PhpEd (Commercial. Proprietary. Windows, Linux.)

SQL & Database tools

There is software that can aid your SQL and database needs with features ranging from queries to administration.

  • MySQL GUI Tools Bundle (Free. Windows/Mac/Linux. Source available. MySQL only.) -- GUI software bundle contains MySQL Administrator, MySQL Query Browser, and MySQL Migration Toolkit.
  • FlySpeed SQL Query (Free. Windows. MySQL/PostgreSQL) -- Build queries without needing deep knowledge of SQL syntax and performs data manipulations such as export and reporting.

Other Tools

  • PuTTY (Free. Windows only.) -- An SSH and telnet client.
  • 7 Zip (Free. Open Source. Windows only.) -- Extract archived and compacted files (such as tarballs).
  • Cygwin (Free. Open Source. Windows only.) -- Allows Windows users to use a Unix like shell. This is particularly useful for interfacing with CVS and patching files... read more
  • Filezilla (Free. Open Source. Windows and Linux. Mac version delayed.) -- Graphical FTP client
  • IE Net Renderer - Check your site on IE 6 & 7 without Windows!
  • UnxUtils (Free. Open Source. Windows only.) -- a lightweight option for adding some Unix command line utilities such as patch and grep to Windows, for those not wishing to download Cygwin.

Version control system - Subversion or CVS

HansBKK - May 30, 2008 - 10:43

I keep my whole development stack, including my local server stack (XAMPP) in a filesystem that gets frequently sync'd between the various PCs I use and a flash drive. This way everything's getting backed up on a regular basis to multiple locations as part of my normal workflow.

I also keep everything under version control. Yes everything - dev environment configuration, code, content, everything. This makes keeping all my infrastructure up to date a much less stressful process.

I can just go ahead and upgrade anything and everything as soon as it's released. If I find something's broken and I can't isolate and fix it myself, I can just roll the offending part of my work environment back to the previous version. If I want to test something, I just create a branch and a separate working copy.

I'm using Subversion, but I see Drupal's dev team is still using CVS, why I don't know. I use Unison for the filesystem syncing, that way I can work on different areas on separate machines and then sync the changes in both directions.

IE Tab

daniel_h - November 7, 2007 - 13:10

https://addons.mozilla.org/de/firefox/addon/1419

Allows rendering pages with IE inside Firefox tabs.
Useful for quick back and forth switching to check layout consistency.

note: as it allow a switch

gilcot - May 15, 2008 - 10:42

note: as it allow a switch to MS-IS rendering engine (yes FF can use both !), IE Tab is for WIndows users only.

Others os users have to emulate or virtualize a WIndows sanbox :( But there are some interesting alternatives ;)
- http://www.kronenberg.org/ies4osx/ (then no CrossOver for example needed)
- there were a better IE for MacOs classic, but it's no longer supported
- http://www.tatanka.com.br/ies4linux/page/Main_Page (then no Xen for example needed)
- http://www.wine-doors.org/wordpress/?p=44 (if you already have WIne installed)

Dean Edward IE7

gilcot - May 15, 2008 - 11:13

however, try to build w3c compliant pages and use the support of Dean's scripts in order to hack Internet Explorer behaviours (and make it more satandart compliant): http://dean.edwards.name/IE7/

Komodo Edit for Drupal

jeremdow - April 18, 2008 - 18:37

I just switched to Komodo Edit 4, and realized I wasn't taking advantage of all the syntax checking and auto-complete features - thought maybe I wasn't the only one - so I added a guide here - now I don't know how I ever coded anything with it!

BTW, Komodo Edit doesn't really belong in the "Tools for Editing Text & Code" category, IMHO - it's as much of an IDE as Bluefish or Geany anyway.

firebug lite

gilcot - May 15, 2008 - 10:22

Also note that FireBug is available for Opera, Safari, IE and others, but the script is more limited (that's why it's named "lite): see http://www.getfirebug.com/lite.html

WebKit (Safari) page inspector...

gilcot - May 15, 2008 - 10:28

Netbeans

mupo - May 27, 2008 - 12:48

In my Opinion Netbeans is the best GUI for developers,
also available for Linux and Mac.

To test IE 5.5/6/7/8 under Vista use IETester.
For Mac you could use ie4osx,
and for Linux IEs4Linux

How to setup an IE quick search for the Drupal API

filda - June 22, 2008 - 18:00

Hi guys,

I want to contribute to this page but don't know how exactly to do so since I'm a newbie.
Can someone responsible put this hint to the IE related section above?

Code below is an equivalent of Firefox's quick search for Internet Explorer. Save it as "ie_search.reg" and double click to import it into your registry. Then open IE and type your search into the address bar (e.g.: "api bootstrap").

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchUrl\api]
@="http://api.drupal.org/apis/6/%s"
":"="%3A"

The code above is configured to search drupal api version 6.

Use same technique to setup quicksearch for any search provider (i.e. google etc.).

EasyEclipse for PHP 1.2.2.2

Whatdoesitwant - July 20, 2008 - 20:30

EasyEclipse for PHP 1.2.2.2 on Windows Vista (business, sp1) throws an error when you start it.
Don't panic. Deinstall. Reinstall and change the default location from C:\Program Files\EasyEclipse for PHP 1.2.2.2 to C:\EasyEclipse for PHP 1.2.2.2. The problem goes away.
Probably some path has been hard coded there (ow). Hopefully that'll get fixed in the next Windows release.

 
 

Drupal is a registered trademark of Dries Buytaert.