What tools do you consider essential in your SharePoint development toolkit?
One answer per tool please so the community can vote!
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It only takes a minute to sign up.Sign up to join this community
SP|CAF : SharePoint Code Analysis Framework
Essential tool to ensure SharePoint code quality. SPCAF analyses SharePoint code from .wsp and .app files and checks all contained code incl. XML, ASPX, JS, CSS for correctness, best practices etc.
It creates dependency Graphs, calculates code metrics and creates an inventory.
http://smtp4dev.codeplex.com/ - "Sets up a dummy SMTP server. Sits in the system tray and does not deliver the received messages. The received messages can be quickly viewed, saved and the source/structure inspected. Useful for testing/debugging software that generates email."
Perfect for small develop environments.
I also found CAML.NET IntelliSense to be very valuable. This has saved me alot of time.
Spencer Harbar's Application Pool Manager, for speedy and specfic App Pool resets.
I use SPVisualDev. Integrates with wspbuilder and now apparently allows remote development (did not try this yet).
SysInternal's (now Microsoft) Process Monitor is essential for troubleshooting security and other problems related to access to the file system, registry etc. Not SharePoint specific, but I find myself using it in combination with SharePoint on a frequent basis.
I would recommend the SharePoint Software Factory which not only allows you to develop for SharePoint 2007 and 2010 from either VS2008 or VS2010, but also supports you with wizards to create the usual SharePoint artefacts.
Have a look at the video on the codeplex page.
Yet another great decompiler for investigation of inner working of SharePoint - dotPeek
and dotPeek is free!
One app, that allows me to navigate the SharePoint folders and having shortcuts to them, walk in and out of WSP's, quickly view the content of the files etc is Total Commander.
Using Windows Explorer and walking down into the 12-hive, right-click, select open with really takes to much precious time. Using Total Commander I have shortcuts to the different folders in the 12-hive and then uses the builtin quick search to find the file and the builtin viewer program.
This is one tool I can't live without, and is the first thing I install on all machines (if I don't use Live Mesh, which contains my Total Commander installation folder).
On the nerdy side, but when Reflector gives up due to obfuscation, and you just need to know what happens behind the scene, enter ildasm.exe True you need to be able to read IM language, but its pretty self explanatory, and have helped me many times. For example when i wanted to know what exactly happend behind the scenes when you use -force (bad bad practice!) in stsadm.exe operations (bonus info: -force basicly swallows all exceptions, so you never will see those other code issues your callouts or similar had)
I like Crimson Editor as an alternative to notepad. Lightweight (no waiting time to start like visual studio), tabbed interface, macros, "column mode".
Great for quickly creating xml files, csv files, or transforming an xml file into a set of c# lines (using macros)
Web Development Helper or some similar tool, to track the communication between the browser and the SharePoint Server. Especially usefull when developing with Ajax, jQuery, Silverlight, or any other RIA technology.
MOSS BDC Design Studio. Cheaper than Metaman but I found to have all the tools I need to create ADFs for the Business Data Catalogue.
a bit of shameless self-promotion, but SharePoint InlineSiteSettings is a small jQuery script I put on CodePlex that saves a developer (or admin) a significant amount time by shortening the navigation paths and limiting the amount of mouse clicks required to get to a particular admin page in SharePoint. It's all about keeping the momentum going :)
Moss Query Tool - Excellent tool to test search queries against the MOSS search database. The application helps you build queries as well.
I can't seem to find the download link anywhere but after a quick Google search, I found this tool SharePointSearchServ which apparently replaces MOSS Query Tool.
I'm going to demonstrate a bias too, but then, I do lots with SharePoint search and I'm always using it:
Helps you write and quickly test search queries.
Great tool for exporting content types, site columns and lists definition in XML; available on Codeplex.
Here is a very relevant thread from a few years ago before 2010 was released: List of SharePoint development tools
User Profile Service application Debugging:
if you couldn't set up User Profiles service application in the correct way, you might not get to the actual error straightaway during the sync. The right way to get the actual error message is to use the Synchronization service manager (MIIS Client) and debug User Profile service application.
Path to MIIS Client can be found at:
C:\Program Files\Microsoft Office Servers\14.0\Synchronization Service\UIShell\miisclient.exe
LinqPad - free development tool for learning and testing Language Integrated Query (LINQ) against SQL, ODATA, or an Entity Framework solution
Great way to learn to Query the SharePoint List Data Service with LinqPad
VirtualBox - the poor man's virtual machine maker (an alternative to HyperV).
A tool usefull for sites content migration: WssAnalyzeFeatures
This tool allows to verify if the feature definition files for all installed features are present on the file system. Also allows to verify if the features used in site collections an sites are installed on the server. In addition it can create a checklist file which can be used to verify if a server has all features installed required to act as destination for a content deployment job of an existing sitecollection.
WssAnalyzeFeatures -url http://server:port
More about it here: WssAnalyzeFeatures
Here are a few helpful tools I use:
Here's a list of other useful tools: