The absolute biggest win for Qooxdoo is its type system*, which makes large projects absolutely designable and maintainable. If you've ever made desktop applications with GTK or Qt, Qooxdoo just simply rocks. This alone makes up for their lacking fancy/modern controls. (That said, those missing controls can be added [relatively] easy, if one has the time and desire.)
ExtJS's type system has improved with later versions, but is still lacking; making for not-so-fun development cycles. And, as you mentioned, their licensing model is just an absolute shame. You either need very deep pockets, or risk exposing your entire application code stack through **GPLv3. It doesn't matter how pretty or amazing their widget set gets, I'm not touching Sencha with a 10-foot pole. If you've never heard of SmartClient (http://smartclient.com/product/smartclient.jsp) it might be worth a look. Its widget set is pretty complete - at least on par with ExtJS, if not more so. My biggest issue with SmartClient is its type system. It's pretty apparent their widget library is geared for code generation to be used with their GWT libraries. It's possible to do entire applications using just the javascript portion of their library, but it is far from what I would call 'enjoyable'. Two major flaws, widget composition and events -- Seriously, who does this: isc.IButton.create({ title: "Click Me", icon: "my_icon.gif", click: function () { [...] } // Why is this a good idea, instead of firing off an event?! }); Their open source license is at least LGPL, so you don't have to worry about having to release your entire application **stack, but their documentation is just absolute crap; Yes, maybe better than NO documentation, but you'll still quickly find yourself pulling out hair, trying to find what you're looking for. So, quick run-down on pros/cons for each: ExtJS Pros: 1) Complete set of modern, nice looking, useful widgets 2) I'll include their improving type system* as a pro, as they at least seem mindful of project organization/maintainability. Cons: 1) Cost of commercial license and absolute non-starter on their open source license SmartClient Pros: 1) Complete set of modern, nice looking, useful widgets 2) The LGPL is acceptable Cons: 1) Horrid type system 2) Documentation is a complete and utter waste. Might be more useful if utilizing GWT, but I have absolutely zero interest in doing GWT. Qooxdoo Pros: 1) By far (we're talking miles and miles [or kilometers and kilometers... :)] the best type system of *any* javascript framework 2) Project organization and maintenance 3) Quite possibly the best documentation of any javascript framework 4) Once you *get it*, it is an absolute joy to develop in. It really is like working with GTK or Qt. 5) Perfectly acceptable license to be used with internal corporate applications. Cons: 1) Its widget set is lacking (but thus far has been suitable for everything I have needed, with the ability to bolt on anything else easily.) 2) Much smaller community, with the illusion of the community shrinking (This has been debated at various times.) I too originally stumbled across Qooxdoo, looking for something other than ExtJS (but that's been a number of years ago already,) and absolutely fell in love with it, so I may be slightly biased. The community may be small, but those in it are always happy and eager to help. The core developers are easily approachable and open to suggestions. It's been a long time since I've interacted with the ExtJS community, so I cannot comment there, but I have had a pretty poor experience with the SmartClient community. Posting in their forums yielded very poor and unacceptable results. (At the time, a non-technical salesmen was moderating the forums, attempting to answer technical questions, always pointing folk to their poor documentation and making posters feel generally stupid for not R[eading]-TFM. It may have improved since, but not likely. (I am not a fan.) I do not [nor cannot] fault ExtJS and SmartClient for wanting to earn some money from their hard work. Both have created very nice looking and useful tools. Their chosen revenue model IS their framework. Qooxdoo on the other hand (through 1&1) has chosen a different revenue model, through web hosting and other online services, thus, their framework lacks some polish, and slower progress. *What I mean by 'type system' is the class hierarchies, class definition and inheritance models, namespaces, and all other OO features. All these make reusable component and widget compositions just so fantastically wonderful. **Yes, it has been argued the GPLv3 libraries can be used for internal applications without releasing your code base, but its definition is so vague that a company like Sencha COULD possibly take you to court if you didn't release your underlying PHP/Java/[...] code along with your client code. This is absolutely not worth the risk or the headache. TL;DR: Qooxdoo ftw. :) On 2014-11-07 07:09, Reggaeny wrote: > I certainly will. May be we could pool our efforts to get some "tricks" > into > qooxdoo which we learned to love when using ExtJs. > > > > -- > View this message in context: > http://qooxdoo.678.n2.nabble.com/Coming-from-Sencha-ExtJs-tp7586356p7586361.html > Sent from the qooxdoo mailing list archive at Nabble.com. > > ------------------------------------------------------------------------------ > _______________________________________________ > qooxdoo-devel mailing list > qooxdoo-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel ------------------------------------------------------------------------------ _______________________________________________ qooxdoo-devel mailing list qooxdoo-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel