.NET Developers: Recommend Your Favorite Open-Source Projects Here
After literally years of trying, I’ve finally succeeded in getting the VSLive folks to let me do a pure open-source talk at the conference. The talk is called Codeplex’s Greatest Hits. The idea is to take a bunch of different cool open-source projects and provide descriptions of them as well as working code demos. The talk is 75 minutes long, so I imagine I’ll have time to do quick demos of between 6 and 8 different projects, of which I already have three or four picked out.
In the spirit of open source, I’d like your help on this. If you’re a .NET developer and you have a favorite open-source tool, post a link to it in the comments. (The tool doesn’t have to be hosted on Codeplex, but it does have to be open-source.) It would help if you also explain why you like it, what you’re using it for, etc. It is totally OK to recommend your own project.
This talk will take place at VSLive Orlando, May 12-16. Once again, the good folks at the conference have provided a discount code for lucky readers of this blog; use the code SOMCM when you sign up for the conference, to get a Gold Passport for $300 off.

Here are a few projects I’m thinking about demoing in the talk:
- NUnit
- BlogEngine.NET
- Facebook Developer Toolkit
- SubSonic
- IronPython
- Script#
- JSON.NET
Ajax Control Toolkit is sort of out because it’s covered in another talk I give (Data-Driven Ajax) and I suspect another speaker will be covering it at the conference this time as well. I want this talk to contain demos for projects that aren’t generally on the radar of most .NET developers.
I will probably not do anything related to Silverlight just because that too is being covered elsewhere and I haven’t really done anything with Silverlight myself yet.
You beat me too it I was going to recommend SubSonic :) — Also check out Ninject http://ninject.org/ (Dependency Injection).
Thanks for the link — what is “dependency injection” good for?
Oh, one other thing: I’m trying to get this post upon DotNetKicks so other .NET developers will see it, so if you could take a second and click on the green “Kick It” icon above, I would appreciate it.
How about Mono? or Moonlight?
BlogEngine.net
kigg - digg in asp.net MVC
Ssandcastle - for documentation
Paint.NET
Deki Wiki
SharpDevelop
Moonlight == Silverlight, not really gonna go there just because I’d need to kick off a whole Silverlight learning project and I only have a few weeks to do this.
Mono seems like it would be a bit broad, and honestly, every time I go to set up Mono something doesn’t quite work correctly. And I have been trying diligently to use Mono for many years.
Sandcastle might be a good one.
Would a developer using Visual Studio on Windows already have a reason to use SharpDevelop? I thought the whole idea there was to have an IDE that ran on non-Windows machines.
@jeffrey Here’s wiki on Dependency Injection http://en.wikipedia.org/wiki/Dependency_injection — at the most basic level it helps you to create a very loosely coupled system.
I use these every day:
Lucene.NET
Newtonsoft.Json
MbUnit
F# - Well, the source comes with it anyway ;)
MiscUtil
Jeffrey,
A LOT of the good OSS projects in .NET are not on CodePlex.
Castle and NHibernate springs immediately to mind
In no particular order:
- NUnit
- NAnt
- NHibernate
- Rhino.Mocks
- log4net
- StructureMap
- Castle Project (Windsor, DynamicProxy, MonoRail)
- CruiseControl.NET
Dependency Injection is a form of the Dependency Inversion Principle, part of Uncle Bob’s SOLID principles. We did a write up on most of them last month (March) on Los Techies (I won’t link whore here, though :), search for ‘SOLID principles’ on google, you’ll find it)
@Kurt — Thanks, Lucene.NET is one that was on my list too that I will definitely try to work into the talk.
I will probably do something on either NHibernate or SubSonic but not both. I’m leaning toward SubSonic even though it’ll be more work for me since I used NHibernate for an intranet project when I was at Yahoo.
@Chat — I’ve used log4net and I like NLog better actually — seemed simpler to me.
SubSonic
RSSToolkit
Flee (this is the most impressive one to me)
Lucene.NET
Witty
BlogEngine.NET
@john s. — what’s Flee? What’s Witty? URLs? Thanks in advance.
What, no one recommended StatSVN? :)
SubSonic and BlogEngine.NET are my recommendations.
Is StatSVN a .NET tool?
Just a few that come to mind…
- ELMAH
- SubSonic
- BlogEngine.NET
- DotNetKicks
Paint.NET
Cropper (on CodePlex)
all the Nxxxxxx tools previously mentioned.
DotNetNuke
I’ll second
- Subsonic
- Paint.NET
- Cropper
- Blogengine.NET
- DotNetKicks (tho I’ve done some work on that)
- Sandcastle and Sandcastle Help File Builder
- Reflector (WHOOPS! Not open source. You fail, Lutz!)
- Regionerator
- GhostDoc
ELMAH too
Flee is “Fast, light-weight expression evaluator” http://www.codeplex.com/Flee
Witty is a WPF Twitter client. Code is on Google Code http://code.google.com/p/wittytwitter/
No requirement on .net? Here’s my list:
- jquery - nice syntax, many plugins
- tinymce - html agnostic wysiwyg
- nhibernate - just works, tons of features, cross database
- castle stack - makes my code better
- nunit - readable assert syntax
- rhino mocks - quick typed mocks
- n2 cms - just like it
What about
-WiX toolset
-screwturnwiki
plus the mentioned above
- MONO (if it counts)
- NHibernate
- RhinoMocks
- NUnit
- Log4net
- Castle Project
- DB4O
- ExtJs Extender
- NAnt
- MbUnit
- NUnit
- FxCop
- NDoc
- Subversion
- AnkhSVN
- TortoiseSVN
- CruiseControl.NET
- NSIS
No Team Server insight… :-P
Ups! I meant NCover instead of NUnit. I find MbUnit to be underestimated by most people just because the name doesn’t start with the letter N… :-(
ScrewTurn wiki, an open-source, .NET-based wiki engine
http://www.screwturn.eu/
- NHibernate
- Castle Project
- SubSonic
- NUnit
- NAnt
- Rhino (Mocks, Tools, Binsor, etc.)
- JSON.NET
- log4net
- Regionerator
- GhostDoc
I use:
-Nunit
-Subsonic
-The Castle project (windsor and monorails)
-Sharpdevelop
-Cropper
-Paint.net
The Castle project is a really great collection of tools/frameworks that I really think would help a lot of developers.
Witty is an Open Source Twitter client written in C# using WPF.
http://code.google.com/p/wittytwitter/
SubSonic
dashCommerce
MbUnit
DotNetKicks
NLog - http://www.nlog-project.org/
MyGeneration - http://www.mygenerationsoftware.com/portal/Home/tabid/36/Default.aspx
Paint.NET
WinMerge - http://winmerge.org/
TortoiseSVN - http://tortoisesvn.tigris.org/
csvreader - http://www.codeproject.com/KB/database/CsvReader.aspx
I’ll second:
CruiseControl.NET
NMock
NUnit
NAnt (though Microsoft rained on that parade)
DotNetNuke (it’s interesting that only one other comment shared DNN. You can’t argue w/600K users, VB.NET or otherwise)
JQuery
Thanks, everybody, for your valuable recommendations. There is a lot of great information here.
By the way, no need to repeat a recommendation here if it’s already been mentioned elsewhere in the comments. I’ll take a look at everything, but in the end I’m going to make random and subjective choices for what to include in the talk based on whether it seems appropriate (and whether I can work up a demo for it over the next few weeks).
I suggest
jayrock -> Jayrock is an open source project to bring JSON and JSON-RPC to .NET
log4net
Ghostdoc — thank you Roland
NUnit
Sandcastle
DB4O
LinFu
Nesper –> It’ll be cooler when it supports LINQ
Shame we cant add reflector in here, but sadly its not open source.
What’s Nesper? What’s LinFu?
Esper is an event stream processing system. Think of it as the ability to create a query and be notified when new events satify the query in realtime. Aside from simple patterns, it can do complex and temporal pattern matching. — http://esper.codehaus.org
LinFu is a framework by Philip Laureano … it creates a very simple interface for a number of advanced concepts like interception, aspect weaving, and dynamic object modeling. It’s a very nice framework that drops nicely into most projects. His framework is in pieces on CodeProject and/or his blog.
JSON Viewer
1. Subversion/TortiseSVN
2. Apache - Usefull for so much more than just hosting websites
3. log4net
4. Lucene.NET - Speed kills!
5. Subsonic
6. Postgresql - best open source database server
7. Firefox
Please don’t pick Sandcastle - it sucks and contributed to the demise of NDoc.
Thanks — Apache and Firefox are not .NET tools, though, so they won’t really work for this.