Matt Snider JavaScript Resource

Understanding JavaScript and Frameworks

Tuesday, April 17, 2007

JavaScript Libraries

This is a growing document, if you see any errors or know something that I don’t, please leave a comment and after a review, I will update from your comments.

JavaScript

http://en.wikipedia.org/wiki/JavaScript

Prototype JavaScript Framework

http://www.prototypejs.org/

Summary:
Prototype is a mature framework that is well known for easy Ajax integration and array manipulation. Many aspects were modeled after Ruby on Rails (RoR) and the framework is included in a RoR deployment. Many other frameworks use Prototype as their foundation, including 3 we will be discussing: script.aculo.us, moo.fx, and Rico.

Team:
Andrew Dupont (http://www.andrewdupont.net/about/)

Resources:

Rico JavaScript Framework Extension

http://openrico.org/

Summary:
Rico is an extension for the Prototype Framework with helpful Ajax, Drag & Drop, and Grid management. There is a large community using Rico, however, it is rarely updated.

Team:
more to come

Resources:
more to come

Script.aculo.us JavaScript Framework Extension

http://script.aculo.us/

Summary:
Script.aculo.us is a JavaScript library extending the prototype framework, providing dynamic visual effects and user interface elements via the DOM.
It is most notably included with RoR. These guys were one of the first (if not the first) to provide a robust autocomplete Ajax interface.

Team:

Script.aculo.us was created by Thomas Fuchs, a partner at wollzelle, and is extended and improved by open-source contributors. Script.aculo.us is released under the MIT license.

Resources:
more to come

Moo.Fx Toolkit

http://mootools.net/

Summary:

MooTools is a compact, modular, Object-Oriented JavaScript framework designed to make writing extensible and compatible code easier and faster. Mootools lets you get the job done efficiently and effectively.

I have a lot of respect for this toolkit, even though they misspelled compatible on their homepage. The team originally extended a dumbed down version of prototype (without all the Array fluff) and with a tiny 3 kb add on for powerful visual effects. Since, they have internalized all their methods, but they still manage to keep the entire toolkit under 3kb (compressed). The code is easier to read and use than Script.aculo.us, has good following, and is frequently updated. If you have need for a simple visual effects, this is the library for you.

Team:

Resources:

Yahoo! User Interface Library (YUI)

http://developer.yahoo.com/yui/

Summary:
YUI is an open-source JavaScript framework, for building web applications. YUI is broken into smaller components, designed using object-oriented JavaScript, and also includes many CSS resources. It is available under BSD License.

Originally, developed as an internal JavaScript development framework for Yahoo web developers, in February of 2006, Yahoo! Inc. release a public version. During the rest of 2006 many new features were added and most of the cross-browser issues were worked out, thanks in a large part to community adoption. At one year anniversary (Feb 2007) the YUI team announced the merger of the internal version with the public version, which is now available.

Hundreds of community members have contributed to the framework and there are many sites that use YUI for all their JavaScript needs. The community has produced many extensions as well, most notably Jack Slocum’s YUI-Ext. YUI is one of the fastest growing, most stable, and scalable frameworks.

Team:

Resources:

Google Web Toolkit (GWT)

http://code.google.com/webtoolkit/?utm_source=en-ha-na-us-google-j2jsc1b&utm_medium=ha&utm_campaign=en&utm_term=google%20web%20toolkit

Summary:
GWT is an open-source framework by Google, as part of the Google Code initiative, to develop Ajax applications in the Java programming language. GWT supports rapid client/server development and debugging in any Java IDE. In a subsequent deployment step, the GWT compiler translates a working Java application into equivalent JavaScript that programmatically manipulates a web browser’s HTML DOM using DHTML techniques. GWT emphasizes reusable, efficient solutions to recurring Ajax challenges, namely asynchronous remote procedure calls, history management, bookmarking, and cross-browser portability.

GWT was first released in May of 2006 and is the only major JavaScript framework that we will discuss, which does not require programming in JavaScript.

Team:

  • to come

Resources:

  • to come

JQuery

http://jquery.com/

Summary:
By John Resig of Mozilla Corp

Team:

  • more to come

Resources:

  • more to come

Dojo

http://dojotoolkit.com/

Summary:
more to come

Team:

  • more to come

Resources:

  • more to come

Mochikit

http://mochikit.com/

Summary:
more to come

Team:

  • more to come

Resources:

  • more to come
posted by Matt Snider at 4:02 pm  

7 Comments »

  1. Hello! Good Site! Thanks you! jiomwkmgsg

    Comment by cvhyxjsumy — June 18, 2007 @ 11:28 am

  2. I think it’s mootool.net instead of mootools.com

    Comment by John — July 11, 2007 @ 12:37 pm

  3. You are correct John, thanks for catching that. I have made the correction.

    Comment by admin — July 18, 2007 @ 8:20 am

  4. Good resource Matt. You may want to check out http://javascriptmvc.com as well. Its a framework that helps create more maintainable JavaScript, as well as testing and compression.

    Comment by Brian — May 31, 2008 @ 1:30 pm

  5. I think the Gapjumper framework (http://www.gapjumper.com) is worth a mention. As well as a very capable animation engine the framework also features a novel template-based mechanism for creating reusable components. Take a look at the demos.

    Comment by Nick — July 18, 2008 @ 11:44 am

  6. Hi Matt,
    You wrote, “even though they mispelled compatible on their homepage.” That should be “misspelled.” ;)

    Comment by Karl — November 9, 2008 @ 8:44 pm

  7. Thanks Karl, I missed that with my spell checker.

    Comment by Matt Snider — November 10, 2008 @ 10:35 am

RSS feed for comments on this post. TrackBack URI

Leave a comment

Powered by WordPress