JavaScript Libraries
Javascript Library requirements
- base for client-side restletport
- cross-browser issues:
- syntax
- DOM model
- event model
- dynamic loading of js-files
- event binding
- unit testing
- (widgets, effects)
- size, stability, maturity
- compression
The contestants
|
|
Latest (non-beta) release |
Size |
|
|---|---|---|---|
| Dojo |
1.0.2 (12/15/07) |
~200kb |
|
| Prototype |
1.6.0.2 (01/25/08) |
~15kb |
|
|
1.2.2 (01/14/08) |
~20kb |
||
| Ext JS |
2.0.1 (01/23/08) |
||
| Yahoo UI Library
|
2.4.1 (12/19/27) |
~20kb |
|
| MochiKit |
1.3.1 (04/29/06) |
||
| MooTools |
1.1 (05/07/07) |
~20kb |
Dojo
Features
- Browser detection
- JSON encoding/decoding
- Package loading
- Powerful Ajax support
- Unified events
- Animation support (including color animations)
- Asynchronous programming support (dojo.Deferred)
- High-performance CSS3 query engine
- Language utilities
- CSS style and positioning utilities
- Object-oriented programming (OOP) support
- Memory leak protection
- Firebug integration
Size
23K (base)
Tools
- Dojo build system, including ShrinkSafe
- Dojo Objective Harness (unit test harness)


But for this: "We need a library to provide common, reusable functionality and save us from writing lots of repetitive code..." GWT is really not a contender.
It would be a good fit if your goals were to avoid maintaining any code in dynamically typed languages, or to be able to audit antipatterns with FindBugs, etc, or to leverage existing libraries written in Java that do interesting computations -- and you intend to do the whole thing, or at least large functional chunks, in GWT.