top | item 6155575

Ask HN: killer JS framework for RIA

6 points| bachback | 12 years ago | reply

Why is there no rock solid framework for RIA (= JS desktop like apps in the browser)?

Here is my list of serious RIA frameworks.

Ext JS Yahoo YUI Cappuccino Qooxdoo DOJO Moo Tools JqueryUI KendoUI zeptojs

ExtJS is commercial, Cappuccino uses a custom language, YUI is old, jQueryUI and dojo don't have good tables & panels. Qooxdoo is very nice, but has not managed to build a rich community for whatever reason. I didn't include Angular and Backbone, because they quite different goals it seems to me.

How does Google's polymer/XBL2/Shawdow-Dom fit into the picture? Any emerging libs already building on this?

10 comments

order
[+] clarle|12 years ago|reply
Hey there,

I work on YUI, and there's definitely lots of active development still going on with it. There's sometimes a bit of confusion with YUI2 and YUI3, with YUI2 being much older and more verbose.

YUI3 is a lot more developer-friendly, and we've worked to build more modern components such as Pure CSS [1] and the YUI App Framework [2]. SmugMug's new site that they released a few days ago (http://www.smugmug.com/) is built on top of YUI, and it looks absolutely fantastic.

If there's anything I can help you out with, definitely feel free to let me know! We've definitely come a long way since YUI2.

[1]: http://purecss.io/

[2]: http://yuilibrary.com/yui/docs/app/

[+] bachback|12 years ago|reply
Thanks for the post. I'm mainly looking for advanced tables and window layouts. I will have to take a closer look.

Any thoughts on the emerging standards like XBL and shadow dom in relation to YUI?

[+] X4|12 years ago|reply
I can back clarle up, YUI is oftern misinterpreted as the old, while in reality it's rocksolid and good enough to build large stuff. Unfortunately the entry-cost is too high, that could be improved by a wrapper class that allows jquery minded people to go faster. http://yuilibrary.com/ could need a design overhaul, it looks like Java Documentation http://www.oracle.com/technetwork/java/javaee/documentation/....

What could be the reason, Bad marking maybe, idk?

YUI not only has pretty good damn support for ARIA and their templates conforms easily conform to WCAG AAA. What I like about YUI is that they continually improve and reinvent themselves. Something you cannot say about extjs and jqueryui for example.

PS: In 2002 - 2004 (not sure when), I've sent a huge css file (it resetted every tag) to a friend working at Yahoo and I was glad when they announced YUI CSS a month later which may or may not have built on my code, it remarkably defined the web. Today you can see html5boilerplate borrowing these ideas Yahoo once put into the mainstream with their awesome Framework.

[+] frankydp|12 years ago|reply
You are very right.

EXTJS is the only RIA and desktop top js lib that has enough features to be a net gain for the UI dev. There is room for a desktop focused lib in this space, that is not at the scale of EXT, or even an opensource project.

http://www.kendoui.com/

Kendo is not ideal but does address a couple of your issues. It is opensource for delayed versions and commercial for current. But it has a poison tree license on the free version. I only bring it up because some of the structures allowed me to build a recent project with a mostly desktop feel, although the documentation is beyond horrible.

[+] rufugee|12 years ago|reply
Why do you call GPL3 a poison tree license?
[+] firefoxNX11|12 years ago|reply
why do you think angular, knockout, backbone, ember have different goals?
[+] bachback|12 years ago|reply
these primarily deal with bindings, templating, etc. For RIA one needs complex even propagation. The difference in my mind is that RIA are much more like a workbench than a horizontal website. In a workbench you have toolbars, menus and panels which can be customized for the complex workflow. Typically such an application has only a couple of views but many possible actions, where as webapps have several views, but only limited number of actions directly affecting what is on the screen.