We're building a nice little community of Magento experts here. I'm curious what Magento extensions and other software tools (IDEs, editors, etc.) everyone is using to help with their development projects?
Both free and commercial tools are more than welcome.
Personal developer surely need
- PHP IDE (Zend Studio, NetBeans or PhpStorm)
- LAMP/WAMP on personal development machine
- X-Debug as a must
- MySQL client (HeidiSQL)
- Firefox + FireBug as main browser; Safari 4/5, Chrome, Opera 10, IE 6/7/8/9
- SSH Client (PuTTY)
- FTP Client and File manager over SSH (WinSCP)
- Manuals for PHP, MySQL, Javascript and Prototype
- Bug tracking system (Jira)
- SVN to keep own revisions and be in touch with future Magento release from at magentocommerce.com
- KDiff3 for SVN better sources comparison
- Image Viewer (XnView) to work with images from time to time
- Password keeper (PwSafe) for all hostings, mysqls and other passwords
- Internet access for Q&A, Magento forums and tutorials
No custom extensions are really necessary, X-Debug and own experience help a lot. For beginners Commerce Bug will be helpful.
This list keeps getting longer the more I think about it!
Tools
- Netbeans 6.9 w/ ScratchPad, TailFile, Scan On Demand and Path Tools plugins
- XAMPP w/ Xdebug (Phpmyadmin of course)
- UltraEdit
- SVN (I know, should be on GIT, but just haven't gotten there yet)
- PHPUnit & Selenium
- Assembla.com for team collaboration, issue and time tracking, etc
- Filezilla & PuTTY
- VMWare for browser compatibility and deployment target OS testing
- Chrome w/ Pendule and Developer Tools (preferred for CSS and JS debugging)
- Firefox w/ FireBug, FirePHP, FireDiff, Poster, JSONView, Web Developer, User Agent Switcher, etc.
- OpenOffice Calc for editing CSV because it actually respects the format (unlike other spreadsheet applications that won't be named...)
- FreeCommander
- RegExr Desktop (requires Adobe Air)
Common Magento Extensions
CommerceBug
the following extensions are available through Magento-connect
HM_DeveloperToolbar
- ModuleCreator
- Fontis_Recaptcha
- Fontis_Australia
- Tangkoko_CmsSearch
TBT_Enhancedgrid and TBT_MassRelater
occassional use, but recommended:
Unirgy_Giftcert and Unirgy_StoreLocator
- Yoast_Filter
- Netzarbeiter_GroupSwitcher
JetBrains PHP Storm 2.0 EAP Builds (They must of named their IDE after you Alan ;) )
Zend Server CE /w Zend Debugger
HeidiSQL
TortoiseSVN
Linux, vim, and custom command line tools to make life easy. Whenever possible, when making changes (like adding model override XML, for instance), I prefer to create a command line tool to do it for me. vim is nice because it is on darn near every server ever, so debugging remotely is about as comfortable as locally. As for linux, the idea of developing without ack/grep and a proper shell is just too much to bear.
Development
Local setup is MacBook, Coda, MAMP, Navicat to manage MySQL, Git or SVN depending on project.
Staging area is on my development server (LAMP) or on client-provided hosting.
For starting projects I have a base template and module set that includes most of what I put into projects.
Modules
Just started using Alan's Commerce Bug. I plan on looking into MageTool soon.
I use Unirgy's Gift Cert and Store Locator often.
Commerce Bug extension from Allan Storm :-)
Aptana/Eclipse for IDE
UltraEdit for quick edits
Wamp
Xdebug
Zend Studio or EditPlus
Subversion/svnmerge.py
PHPDoc
PHPUnit
Jira/Confluence for task/bug tracking and project specifications
You can see how to work with Magento using ZendStudio here, in Magento Webinars Archive
I've been using Zend Studio on Ubuntu for a while now and love it. Combining a powerful IDE and command line tools (grep, etc...) has my vote.
On a side note, I've been working on a Magento extension named "Advanced Developer Tools". I use it (a lot!) to get info about blocks and edit XML and PHTML files by clicking on blocks. It's still beta though.