Us .NET developers get it tough. There is enough MS bashing to bury us three times over, and we’ve learned to take it on the chin. You know the type – those dev’s and designers who continually boast of their open source credentials, and full stack frameworks.
Well, its time to dig deep, and give them something to turn their noses up at. I’ve done a bit of research to see what is out their in the .NET open source community, and its safe to say that the tables are turning. Slowly, but turning none the less. Here’s a few of the better .NET open source projects which are making a difference to .NET developers worldwide, and it just shows that the open source .NET community is alive and well. The next time someone says there are no projects out there, point them at this post.
Umbraco
Source Code: Grab the source code here.
I’ve mentioned umbraco as an open source system to keep an eye on before, in our compilation of open source CMS systems.
It impresses me on each release, and has just put together an awesome sample site that is well worth a look, and will enable developers to get up to speed quickly and easily.
i386 Newsletter System
URL: http://www.i386.com/Products/Newsletter.aspx
Source Code: Grab the source code here
I came across Austrian company i386 when doing a bit of a scout around for some open source email marketing solutions. Its a C# system that could probably do with some community support, with the last checkin April 2008. They need a bit of a hand out with some language translation, so if any of you guys are german speakers, (Austrian German) maybe you could be of use.
The application can run on MSDE/MS SQL and Access, and is on version 2.0 of the framework.
YetAnotherForum
URL: http://www.yetanotherforum.net/
Source Code: Grab the source code here.
YAF was introduced to me through Michael at Codefixer. It seems like a pretty solid, well architected system, and has a vibrant and active open source community contributing to it’ success. In addition to a stand alone system, it also has a DotNetNuke and Rainbow Portal, which I’ve mentioned here.
If you haven’t already guessed YAF is a Open Source discussion forum or bulletin board system for web sites running ASP.NET. The latest production version runs on ASP.NET v2.0 with a Microsoft SQL Server backend. It is licensed under the GPL.
DotNetNuke
URL: http://www.dotnetnuke.com/
Source Code: Grab the source code here
DotNetNuke is an open source web application framework ideal for creating, deploying and managing interactive web, intranet, and extranet sites securely.
It has received it’s criticisms, including being accused of being bloated and a bit of a hungry beast, however over the last five years, DotNetNuke has established itself as a force to be reconned with. It has become an essential framework within many business environments, and has released a professional commercial product which is a testament to the community achievement.
The quality and flexibility of the code base, combined with a very active and supportive community, has resulted in hundreds of thousands of deployments.
Rainbow Portal
URL: http://www.rainbowportal.net/
Source Code: Grab the source code here
Rainbow Portal is the rebel breakaway / fork project from DotNetNuke. They were the underdogs in the portal wars. That said however, their systems are built in C# as opposed to VB, and things are done a bit differently, depending on your needs that might be ok. There is always things to be learned from other people’s coding examples.
My own thoughts are that it may suit you if you are using C# to code, however the alternative MojoPortal project seems to be gaining traction. The last release of Rainbow was way back in 2006. Mojo Portal’s last release was 26th Feb 2009.
MojoPortal
URL: http://www.mojoportal.com/
Source Code: Grab the source code here
Mojo Portal appears to be receiving alot of attention recently. This can probably be attributed partially to the wide variety of database platforms which it runs on.
Separation of database concerns is one sign of a well architected project, and whilst I can’t personally vouch for the code, it looks like one to keep an eye on. They have a focus on creating standards compliant frontend HTML, and for that reason, they get my thumbs up. Both Rainbow Portal and DNN tended to create code which was very heavily table based, which lead to skinning difficulty. This seems to have been addressed within Mojo Portal.
Oxite
URL: http://visitmix.com/Lab/Oxite
Source Code: Grab the source code here
Oxite is an open source, web standards compliant, blog engine built on ASP.NET MVC. It is fully featured and includes support for all the blogging features you would expect.
Born out of a necessity to showcase Microsoft’s muscle in the blogging scene, Oxite provides example of ‘core blog functionality’ in a reusable way. The entire VisitMIX site runs on Oxite, which just shows the potential quality of the finished product. I love the effort that they have put into the design of MIX, and for once, we are able to show others a production Microsoft site running a Microsoft product that really shines visually.
nopCommerce
URL: http://www.nopcommerce.com/
Source Code: Grab the source code here
Running on C# nopCommerce is a fully customizable shopping cart. It’s stable and highly usable. nopCommerce is a open source e-commerce solution that is ASP.NET 3.5 based with a MS SQL 2005 backend database.
It is pretty feature packed when you take a look around the system, and should serve as a good platform to build on for some developers. Whilst they aren’t over on the MVC system they have taken care of some of the problems with querystrings, and include a URL rewrite module.
Most developers should be able to get up and running quickly, simply change your web.config in a few places and the autoinstaller should get you going. well worth investigating if you are a .NET developer with a background in e-commerce.
Kigg
URL: http://www.codeplex.com/Kigg
Source Code: Grab the source code here
KiGG is a Web 2.0 style social news web application developed in Microsoft supported technologies. It is an alternative to Pligg, which has gained significant niche adoption on the web.
It utilises the MVC pattern, and a number of other open source libraries – including the Microsoft Patterns and Practises library for it’s logging and caching. I’m a big fan of the Enterprise library, and I’ve used the security module for a few projects myself. Kigg has been developed with a TDD approach and uses xUnit.Net for it’s unit testing framework and Moq as a mocking library. DotNetShoutout amongst other’s uses it extensively as the framework to run the site.
SharpWebMail
URL: http://anmar.eu.org/projects/sharpwebmail/
Source Code: Grab the source code here.
Whilst it aint the prettiest in the group – SharpWebMail is an established project which is written in C#, it uses a POP3 or IMAP servers as the mailstore and sends mail through a SMTP server. It is the only open source webmail solution for the .NET platform that I am aware of.
If you are a good user interface designer, and have never contributed to an open source project before, this would offer a great way to establish a name for yourself. Alternatively, adding a skinning engine to the project would probably be a help.
SharpWebMail is Licensed under GNU GPL.
DotNetShoppingCart
URL: http://www.dotshoppingcart.com/
Source Code: Grab the source code here.
DotShoppingCart is an ASP.NET open source CMS & eCommerce software. It enables businesses to manage site content and sell products and services through an online storefront. Unfortunately this was one of the ones I missed on my open source e-commerce post.
DotShoppingCart open source edition is licensed under DotShoppingCart Public License. It’s basically a MPL 1.1 plus the DotShoppingCart powered logo requirement on every single page.
If you are a developer looking to customise this one extensively, you will have to shell out for a Commercial license. That said, if you are looking for a cost effective route to market this one is worth examining a bit closer. As with nopCommerce, the feature list seems pretty extensive.
BlogEngine.NET
URL: http://dotnetblogengine.net/
Source Code: Grab the source code here
BlogEngine.NET is an stable open source .NET blogging project. Touted as the next alternative to WordPress for .NET developers it integrates the best features of the .NET platform into its offering. It also has received backing from Redmond, and is featured on the Microsoft.NET website as a Starter Kit.
Personally, I haven’t used it much – the sheer amount of plugins for WordPress in comparison dwarf the project, and even for a code head like myself, it isn’t as appealing. That said, it may offer a way of integrating an existing .NET solution with a blogging engine. All the controls in BlogEngine.NET are 100% XHTML 1.0 compliant, which is great. The code base is C# ASP.NET 2.0.
Best of the Rest.
DasBlog - Open Source blogging Engine
Starter Kits and Community Projects – Microsoft ASP.NET projects, good collection of Open source systems here.
SubText – Another blog Engine
Hydrogen CMS – A .NET Open source System
DotNETKicks – Similar to KIGG, only not.
EvolUtility – A CRUD Framework
Suteki Shop – Another e-commerce open source MVC app.