Thanks for checking out Enyo! This document will help you orient yourself with how the framework is organized and what each piece offers. From there we encourage you to dig into the tutorials and other documentation and get started!
In a given Enyo release, you will find the following folders:
The core of the framework, known simply as
enyo in the source code, provides powerful features that enable complex applications and add-on libraries to be built atop the Web stack in a modular way:
These pieces are actually separable (it's easy to make micro-builds of Enyo), but we believe they form a useful working set, so we provide them together as the Enyo core.
Everything else described below is an optional package built on top of the core. You can choose to include these à la carte to fit your application's needs. However, these are only reference libraries for what we envision will be a large ecosystem of add-on libraries that bring different look and feel, layout options, service wrappers, etc. Check out the Enyo Community Gallery to see just how easy it is to create and share new components and add-on libraries.
The Onyx library provides a toolbox of beautifully-styled UI components for building mobile and desktop applications. It is ever-expanding, and currently includes the following:
Take a look at Onyx Sampler to see the Onyx widget set in action.
While Enyo components can be laid out using pure HTML/CSS techniques, we have provided a Layout library that gives you easy-to-use, performant, cross-browser compatible containers for your common layout needs:
You can read up on these layout options here.
Enyo's encapsulation model works equally well for structuring canvas-based components as it does for traditional UI, and we have provided a library that abstracts common canvas primitives as Enyo components:
You can easily extend these to create complex graphical applications and games, such as our Pirate Pig canvas demo application.
The "extra" library holds a number of useful utility-type components, which are used in various samples and demo applications.
Bootplate is a template that provides a complete starter project containing everything you need to develop and deploy Enyo apps out of the box, and is now included in each release. It contains current versions of Enyo and the most common libraries for app developers (Onyx and Layout), as well as scripts to minify and create deployable versions of the source and assets. Get started with bootplate here.
From here, there are a number of guides you can continue reading to help ramp up into Enyo development: