10 April 2007

Open Source Jumptree Web Forum in ASP.NET 2.0/Nhibernate is released

Part I - Why I choose Nhiberneate
Part II - Spring.Net, Setup Nhibernate Support

Part 3 - Getting Ready
Part 4 - Setup and Add Category
Part 5 - Different Ways of Mapping File

New V1.1 Update is availabe

Jumptree NHibernate Forum v1 is released!! If you have followed up with my previous NHibernate tutorials which is really a Nhibernate learning process for myself, then you know I've been working on this to get it released. It serves as a tutorial for Nhibernate beginners such as myself to get started hoping it'll help others to learn NHibernate like I did.

Having said that, at the same time, it's a good forum, does what it does without the gazillions of features that you'll never need and it performs pretty well.  In fact, it’s so stable and fast, we have moved it to production and it is now live, you can view it here.

So I want to share what I have with everybody and before I continue any further,  the source code is now available for download here.

If you are going to use our forum out of the box, it's required that you maintain the "powered by Jumptree" link on the bottom. All we want is a little credit :) But if you simply want to learn from the example, then feel free to rip it apart.

 

One note about this version of the forum. I know I talked about multiple categories per discussion, but due to our specific requirement on our Jumptree.com, we felt one category per discussion is more suitable for us.  However, the multi-category code is still left in the "new.aspx", so feel free to uncomment it out and use it if you need it.

In addition, there is no authentication of any kind build into the forum as our forum is open to public without requiring anybody to register ( we feel it will make posting easier), so if you want to build things like "admin" functionality, you will have to do some work on your own. For instance, on our production site, we hooked it up to our backend CRM portal and Edit/Delete post is enabled only if your ASP.NET 2.0 role is in "Administrator".  It's simple really, when data is bounded to the comments, we simply check the user's role, if logged in and is an admin in our CRM, display "edit|delete". I'm sure you will find a way to integrate it into your own ASP.NET website.

The features again

  • VERY light weight -  4 pages, 4 tables.  It does what it suppose to do
  • VERY fast.  10,000 records retrieved in under 4 seconds.
  • Powered by NHibernate and ASP.NET 2.0
  • Open source and extensible. Add whatever you like onto it,  it's just some simple code.
  • Nice and clean UI  - Simple and Pretty. A simple drop of a new CSS, you can customize it easily :)
  • Public anonymous posting.
  • Support editing and deleting threads.
  • Support Multiple Categories.
  • Support Paging (The default right now is set to 3 in Gridview, change to whatever you wish)
  • Record User IP
  • At last, it won't be another dead project couple month later! You know we will be constantly improving it as we use it on our own product site!!


Obviously, this application is just to get everyone started. The architecture will have to be improved. After this v1 is done, I will have to refractor the code into 3 tiers design, add Spring.NET's NHibernate support into it and etc. I will document the process and blog about them as I develop it just like what I have done in the past one month.  

The purpose is to do one step at a time, this first stage is to get everybody familiar with NHibernate without the distractions of getting into design patterns. Once everyone is on the same page with what NHibernate has to offer, then we can get into how to refractor the app and use Nhibernate best practices. Meanwhile, if you are a NHibernate guru, please jump in and fix anything that could benefit all of us. Thanks a lot!

One step at a time, gradually improving with you is Jumptree's model :)

Comments

No Comments
New Comments to this post are disabled