views:

97

answers:

1

Popular JavaScript frameworks/libraries like jQuery, MooTools, Prototype, and YUI (to name a few of the most popular JavaScript frameworks out there) definitely have a solid foothold in the JavaScript framework arena.

But for the more adventurous developers looking for new or alternative frameworks/libraries, there are options like:

  1. SproutCore
  2. Spry
  3. JavaScriptMVC
  4. qooxdoo
  5. midori
  6. Archetype JavaScript Framework
  7. June Framework
  8. UIZE
  9. SimpleJS
  10. Fleegix.js

Each one has its own merits. But which is preferable for what over which?

+5  A: 

I think server-side javascript has an exciting future.

Things like node.js and jaxer might pave the way for an environment that makes a compelling argument for writing an application strictly in javascript. There's a lack of frameworks right now, and a lack of general javascript libraries (for things other than traversing the DOM ;) but that might change.

I can't tell you how many times I've wished I didn't have to port over various bits of model code to javascript, or resorted to RPC style requests just so I don't repeat myself. I can port the drawUserVcard() function to javascript (say, from Python) so that I can generate a vcard dynamically on the frontend from json data, but then I have consistency issues because my ported code needs to track the original Python generated result.

Aside from server-side "don't trust the client" operations, a lot of processing can be offloaded to the user. Why print HTML in Python/PHP/Ruby? Actually, none of those languages have an API as nice as jQuery for HTML manipulation. Why query a database in Python just so you can generate some json that you pass off to your client scripts? Why not just read json data directly (CouchDB) from the database and let the client hydrate it.

There's so much room for improvement here.

Koobz