### Looking for the issue tracker?
It's moved to [https://enyojs.atlassian.net](https://enyojs.atlassian.net).
---
# Quick Info
## Core
This repository contains Enyo core. We've pared it down to the essentials, so
folks can work at the metal. Widget sets, localization code, and other fancy
bits are in separate repos.
## Warning about file://
_Note_: In Chrome, various samples will not work from `file://` URLs because of
Chrome's security policy. To work around this, run your app from a local http
server, use the `--allow-file-access-from-files` flag when starting Chrome, or
use the online samples at http://enyojs.com.
# What Is Enyo?
Enyo is an object-oriented JavaScript application framework emphasizing
modularity and encapsulation. Enyo is suitable for both small- and large-scale
applications.
Enyo 1.x was the underlying framework used to develop applications for HP's
TouchPad tablet. Enyo as shipped on the TouchPad included an complete set of
user interface components and service wrappers. What you will find here is Enyo
2, what we informally call _core_: the primary infrastructure needed to support
any number of Enyo-based libraries. Enyo 1.x is now available under an
open-source license.
Enyo was designed from the beginning to be highly extensible. This repository
reflects a small working set of code that may be expanded with any number of
libraries or plugins.
Enyo 2 is lightweight, easy to digest, and powerful.
# What Do I Get?
The core code includes the Enyo kernel, the DOM extensions, some Ajax (XHR)
tools, and basic wrapper kinds for a lot of DOM form elements. We believe this
is a useful working set of tools.
Enyo 2 provides a modularity concept (Component) and a view concept
(UiComponent). The DOM aspect includes a widget concept (Control) and an
extensible event system (Dispatcher). Ajax resources include basic XHR
functionality and an implementation of XHR as a Component (Ajax). In the UI
arena, Enyo offers base kinds for common controls like buttons and popups, along
with layout-oriented kinds, such as platform-optimized scrollers.
By themselves, these pieces are sufficient to create large applications using
the Enyo encapsulation model. Developers who only want this low-level code are
encouraged to roll-their-own application and UI layers. For those who want a
richer set of tools, we have several pre-built libraries available.
# Why Do I Care?
First is our emphasis on cross-platform compatibility: Enyo core works on both
desktop and mobile browsers.
Second is Enyo's building block approach to applications. Each piece of an
application is a Component, and Components are constructed out of other
Components.
For example, it's easy to define the combination of an `` tag and a
`