views:

156

answers:

2

Hello. I'm looking for a JavaScript library for my web application. The application is very data intensive and has rich form controls (almost windows like). AJAX will be used liberally. The development platform is ASP.Net (mostly ASP.Net MVC will be used).

I cannot pursue with ExtJs due to the price/license factor. I checked Qooxdoo but it is very windows-unfriendly. YIU fell short of my needs w.r.t. form controls it offers.

Other libraries like jQuery do not offer rich form controls. So I am looking recommendations for a library that satisfies most of following needs:

  • Rich UI controls
  • Solid API for AJAX handling
  • Employs good programming practices for scripting in frontend (preferably OO but not mandatory)
  • Free. Else has only development cost and not production
  • Windows friendly (or at least not unfriendly)
  • Not monolithic.
  • Should be independent (Not have development & production dependencies)
  • Theme'ing should be easy (preferably wrapped by the library)

I am not mentioning other basic needs (like browser compatibility). I hope any popular library will honor those.

+1  A: 

What's wrong with the GPL version of ExtJS? It's free.

RibaldEddie
As per the GPLv3 license I'll have to release the source code of my client's application. This is not acceptable to my clients.
Kabeer
It's JavaScript. You're sending the code to the client anyway.
RibaldEddie
Ribald, I'm not sure if the license agreement is as simplistic as you've portrayed. As per the license, one has to open source the entire application that uses ExtJS. In that case it would be my back-end that will comprise of the code of my ASP.Net pages with business objects, business processes and also subsequently my database schema. Basically anything and everything that is part of my 'whole' application. Please correct me if my understanding is incorrect.
Kabeer
If you are that unsure about it, you need to get a lawyer that understands these issues. However even a cursory Google Search would indicate that the GPLv3 does not force you to provide the source code to the server-side program.
RibaldEddie
+1  A: 

SmartClient offers LGPL licensing, and I think caters to most, if not all, of your requirements (I don't remember for sure if they provide a non-monolithic option - I think they do)

ob1
Friend, I guess SmartClient is a good candidate. Prima facie it looks like it doesn't provide a non-monolithic option. Capability-wise, I believe it is not as sophisticated as ExtJS but certainly ahead of many others. My initial POCs don't speak very high of it's performance viz-a-viz ExtJS, but there is still some work to be done. But surely, I feel more confident with SmartClient and will give it a serious consideration after looking at still what others recommend and my practical experience with SmartClient.
Kabeer
Glad my answer was useful :-)Personally, I use ExtJS (My company pays for it, so we don't have to go open-source).I was evaluating both of them, and decided to go with ExtJS due to an easier learning curve (a lot of public content to help get started) and nicer default look and feel.I do remember it was feature packed at about the same level as ExtJS, and that it was divided by default to ~6 different .js files (re the monolithic mini-discussion)
ob1