The tree component is a javascript-only library that transforms a series of nested <ul> tags into a tree component:

Standalone tree
Trees can be instantiated from a series of nested lists of data:
This example will some nested lists as a tree, and if a <li> has a "folder" class but no children nodes, the "loader" function will be invoked with the expanding item id.
Ajax trees
The loader parameter can be a user-defined javascript function, or a server URL that must be invoked to get tree children:
This example will invoke the provided URL to get children data when the user expands a node. The server response may use JSON or HTML syntax. For further details about the expected syntax, see tree.js.
In this example we are also specifying a root node, and an onclick handler that will be invoked when a node gets clicked.