jsTree is jquery plugin, that provides interactive trees. It is absolutely freeopen source and distributed under the MIT license. jsTree is easily extendable, themable and configurable, it supports HTML & JSON data sources and AJAX loading.

jsTree functions properly in either box-model (content-box or border-box), can be loaded as an AMD module, and has a built in mobile theme for responsive design, that can easily be customized. It uses jQuery's event system, so binding callbacks on various events in the tree is familiar and easy.

Just a few of the features worth noting:

  •  drag & drop support
  •  keyboard navigation
  •  inline edit, create and delete
  •  tri-state checkboxes
  •  fuzzy searching
  •  customizable node types