Project Description
HawkWiki is a simple wiki clone implementation, written in C# and ASP.NET by Harry Pierson

On the surface, HawkWiki (originally DevHawk Wiki) would appear to be the world's simplest Wiki clone implementation. And since I haven't really worked on it in several years, I guess that's true. However, there was a method to my madness.

HawkWiki includes two projects: WikiRenderer and SampleWiki. WikiRenderer is a library for converting wiki markup into HTML. SampleWiki is an ultra-simple ASP.NET web app that uses WikiRenderer (it's more of a test for WikiRenderer than a real wiki implementation).

The reason for creating these seperately is to enable the embedding of wiki-esque functionallity into other web apps. For example, where most weblogs support comments, maybe a comment wiki would be more interesting. Instead of having two seperate systems (like Sam Ruby has for his syndication format discussion) they could be easily integrated into the same web app with the same look and feel.

WikiRenderer supports a subset of the original Wiki text formatting. Bulleted and numbered lists, bold and italics, monospaced font, automatic hyperlinking, inline images, WikiWords, etc. I am open to suggestion on new formatting.

Originally, I had a bunch of ideas for this library, including supporting wiki comments in my own weblog, but I've never gotten around to implementing them. However, at least one person asked me about the code after the original GotDotNet workspace was shutdown, so I re-released the code on CodePlex. I did make a few minor changes (new name, moved to .NET Framework 2.0, etc) and adopt the MS-PL license (replacing the original MIT license).

 DevHawk - Projects|HawkWiki News Feed 
Wednesday, August 01, 2007  |  From DevHawk - Projects|HawkWiki

In case you didn't know, GotDotNet is shutting down. I recently got an email asking about my very old DevHawk Wiki project, which had been hosted on GDN. I didn't realize anyone was still interested in this project, so I set up a new project for it on CodePlex. As part of the move, I decided to rebrand it "HawkWiki" and change its license to Ms-PL. (CodePlex doesn't support the zlib license DevHawk Wiki was originally released under.)

I uploaded two versions to the HawkWiki source repository. The version that until recently was hosted on GDN is version 0.2. There's also later version that I never publicly released before. This later version compiles the wiki markup text into an IHttpHander class, similar to how ASP.NET compiles web pages. I'm not sure if you'd ever really want a wiki built this way, but it does provide a good example for building your own compiled web page infrastructure. If you ever read my old MSDN magazine article, you'd know this is an approach I've been interested in for a long time.

I also used this project as an excuse to get to know CodePlex. Though CodePlex can integrate directly into VS via Team Explorer, I chose instead to use the CodePlex client. CPC provides an edit-merge-commit command-line experience like Subversion. I found it much easier than using Team Explorer, though adding new files was troublesome since they had to be added to the project and source control separately. If you like this approach, there's also a version that works with vanilla TFS instances (CPC is hardwired to CodePlex).

So feel free to take the wiki code and mangle it to your heart's content. If there's interest, I'd be willing to grant some other folks checkin permission. However, it's more a curiosity than a real project, so if you're really interested in a .NET based wiki, there are better choices out there.

 DevHawk - Projects|HawkWiki News Feed 

Last edited Aug 1 2007 at 11:58 PM by harrypierson, version 7
Comments
davidpodhola wrote  Feb 10 at 10:03 PM 
I like the project very much. I needed a small wiki running on mono (.NET 1.1) and apache2 so I downloaded the later version and after few changes I was able to get it compiled and running. The changes are really small so maybe they might be checked back in. I can also provide compiled version and installation instruction for mono if somebody is interested.

Updating...