On April 1, Microsoft announced new and renewed MVPs. One of the "renews" was Bil Simser. But this was no April Fool's Day joke. Bil has scads of experience in .NET development and solutions architecture, has a passion for Agile development, and is an active contributor to the SharePoint community. In fact, the previous week, Bil took it on himself to poll MVP community members to identify their favorite CodePlex projects. Now that CodePlex is bigger and has more projects than you could possibly have time to evaluate, it made sense to get a subjective, editorial rating of projects. Bil documented the results in his Fear and Loathing Blog, which is a great resource for all SharePoint developers. Check it out! So without further ado, here's the list of "Favorite CodePlex SharePoint Projects" by Bil Simser.
SharePoint 2007 Features
This is probably the biggest and baddest and bestest project in my list (excluding the obvious below). Scot Hillier has gathered together an awesome collection of useful little deficiencies in SharePoint and delivered them as a package of new features. This is what SharePoint should have in it and what I call the content that Microsoft missed (much like how they should just buy Paint.NET and get rid of MS Paint, but that's another blog entry). Scot personally goes over all the features (he's not the original author of all of them) and validates them and packages them together into an installable solution package. Some of the more popular parts of this package include the ability to print out the contents of a list, view the heirarchy for content types, add regular expressions to field validation, reset a theme across the farm (and apply a custom theme whenever a new site is provisioned), and enforce unique columns in a list. Awesome!
This is my #1 tool (next to Visual Studio) for building new features in SharePoint 2007. Esentially it takes the grunt work out of creating WSP files and editing xml/ddf files manually. You can use it to first create the 12 hive structure (sorry, I get blasted for calling it the "hive", old habits die hard) then you plop your features, web parts, receivers, etc. in the structure and run WSPBuilder to package it all up into one simple solution that can be handed over to your SharePoint admin to add to your farm. You can also use the excellent SharePoint Solution Installer to take that WSP file and create an MSI. I highly recommend it to be in any SharePoint developers toolbox.
The Community Kit for SharePoint was started as an initiative by Lawrence Liu when he was at Microsoft. It always rates high on the popularity rating and while it does suffer from a lot of issues (being a fairly complex set of projects, not just one) there are a lot of great nuggets in the chaos. CKS provides several "editions" which are focused on a particular community or feature of SharePoint. The popular editions are the Enhanced Blog Edition (basically anyone running a public facing blog on SharePoint should be using this), User Group Edition (great for SharePoint user group sites!) and Forms Based Authentication (which provides much better web parts for managing users on FBA sites). Many, many people have put a lot of effort into the various editions and some companies have donated web parts to make this a reality so check it out.
SharePoint Manager 2007
There's been a lot of these type of tools out since SharePoint began (I seem to recall SharePoint Explorer for 2003). SPM lets you explore every site on the local farm (it must be run from the SharePoint box) and view pretty much everything including features, lists, sites, users, timer jobs, etc. If it's in your farm, it's here and this is a much easier way to browse your configuration than going through dozens of screens in Central admin.
WSS3 WorkFlow Tools
This was recommended by Andrew Connell but I haven't personally used it. It's a sets of workflow tools, comparable to an InfoPath design methodology that lets you easily create new workflow forms. Think of it as having some buiding blocks for creating workflows that a) doesn't require SharePoint Designer and b) isn't as complex as building workflows from scratch in Visual Studio. There are videos and documentation on the site as well as some good discussions around using the tools.
This is a set of activities that can be wired up to workflows (using SharePoint Designer) to hit the ground running when it comes to building solutions in SharePoint. Activities include managing permissions on lists, copying items in lists, and getting data from InfoPath (which can *always* be a chore and a half at the best of times).
SharePoint Tool Basket
The Tool Basket is a collection of projects, similar to CKS, that provide a set of new tools for SharePoint. There's an awesome document rating system that pllugs into almost any content, feature and content explorers, and a forms designer that lets you customize the new/edit/display forms that are associated with lists. This lets you customize those boring old SharePoint forms and create new ones in your SharePoint site (no SPD required!) using a drag and drop interface. The forms still respect whatever theme or look and feel you've applied but allow you to create multi-column setups easily. There's also a nice set of PowerShell scripts that will make your SharePoint experience more palletable and other goodies so check the basket out. Like the Features project, you can pick and choose what you want to add to your site.
Search Community Toolkit
Much along the lines of the Community Kit for SharePoint, SCT is a collection of features, web parts, and tools that enhance the search experience on SharePoint (includes MOSS 2007 search, Search Server 2008, and Search Server 2008 Express). Basically if you want to spice up your search center this is the place to go. Ever get the "make it like Google" request from your users? Then this is project to check out (it's really over 20 different projects but SCT serves as a hub to access all of them).
Hopefully that will get you going if you're lost in a sea of SharePoint on CodePlex. Feel free to add your own personal favs in the comments section.
Of course I should include SharePoint Forums here along with some other projects to be named later but the developer of these projects is really behind and should get his act together with an update.