WARNING: you are not looking at the live version but at an older version.

JavaScript Libraries

Javascript Library requirements

  1. base for client-side restletport
  2. cross-browser issues:
    • syntax
    • DOM model
    • event model
  3. dynamic loading of js-files
  4. event binding
  5. unit testing
  6. (widgets, effects)
  7. size, stability, maturity
  8. compression

The contestants


Latest (non-beta) release
Size
the good
the bad
Dojo

1.0.2 (12/15/07)

50kb+

  • buggy
  • ugly code
  • huge
Prototype

1.6.0.2 (01/25/08)

~120kb

  • poor documentation
  • no UI
  • extends Object.prototype (here and here)

jQuery

1.2.2 (01/14/08)

~26kb

  • documentation
  • easy to use
  • fast
  • CSS 1-3, basic xpath
  • lightweight
  • chainable
  • plugins
  • only selector+effects+some-XHR
  • only for simple and small projects
  • no widgets
Ext JS

2.0.1 (01/23/08)

7kb+

  • support
  • good collection of widgets
  • UI-centric (+ or -)
  • heavy
Yahoo UI Library

2.4.1 (12/19/07)

29kb+

  • history manager
  • slow
  • heavy
  • complex
MooTools

1.1 (05/07/07)

9kb+

  • lightweight
  • fast
  • easy
  • only loads what's needed
  • Object Oriented
  • chainable
qooxdoo

0.7.3 (01/14/08)

Rico

2.0rc (01/29/08)

  • based on prototype
  • few features

Disqualified:

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)
Comments (2)