Enyo (software)


Enyo is an open source JavaScript framework for cross-platform mobile, desktop, TV and web applications emphasizing object-oriented encapsulation and modularity. Initially developed by Palm, it was later acquired by Hewlett-Packard in April 2010 and then released under an Apache 2.0 license. It is sponsored by LG Electronics and Hewlett-Packard.

Bootplate

Bootplate is a simplified way of creating an app, providing a skeleton of the program's folder tree. The Bootplate template provides a complete starter project that supports source control and cross-platform deployment out of the box. It can be used to facilitate both the creation of a new project and the preparation for its eventual deployment.

Libraries

  • Layout: Fittables, scrollers, lists, drawers, panels.
  • Onyx: Based on the original styled of webOS/Touchpad design but available for use on any platform.
  • Moonstone: Used by LG SmartTV apps but available for use on any platform.
  • Spotlight: To support key-based interactions and "point and click" events on remote controls and keyboards.
  • Mochi: Advanced user interface library. It has been maintained by the community since the team behind webOS released this abandoned interface from Palm/HP as open source. This library is not included on bootplate right now, but has design documents.
  • enyo-iLib: Internationalization and localization library, it wrap ilib's functionality on Enyo apps. G11n was another library that has been deprecated on newer versions of enyo.
  • Canvas
  • Extra
  • enyo-cordova: Enyo-compatible library to automatically include platform-specific Cordova library.

Use

The following projects are built with Enyo:
Partial list of Enyo apps can be found on Enyo Apps. Some developers can be found on Enyo Developer Directory.

Examples

This is an example of a 'Hello world program' in Enyo

enyo.kind;
new HelloWorld.write;

Supported platforms

In general, Enyo can run across all relatively modern, standards-based web environments, but because of the variety of them there are three priority tiers. At 2015 some platforms supported are:
  • Tier 1 Supported at high priority:
Packaged Apps: iOS7, iOS6, Android 4+, Windows 8.1 Store App and Windows Phone 8, Blackberry 10, Chrome Web Store App, LG webOS.
Desktop Browsers: Chrome, Safari, Firefox, IE11 IE10, IE9, IE8..
Mobile Browsers: iOS7, iOS6, Android 4+ Chrome, Kindle Fire and HD, Blackberry 10, IE11,IE10.
  • Tier 2 Supported
Packaged Apps: iOS5, iOS4, Android 2.3,Firefox OS, Tizen OS, Windows 8 Store App, Windows.
Desktop Browsers: Opera, Chrome >10, Firefox >4, Safari >5.
Mobile Browsers: iOS5, iOS4, Android 4+ Firefox, webOS 3.0.5, webOS 2.2, BlackBerry 6–7, BlackBerry Playbook and others.
  • Tier 3 Partial support
Mobile Browsers: Windows Phone 7.5.
  • No support
Desktop Browsers: IE8
Mobile Browsers: Windows Phone 7, BlackBerry 6, Symbian, Opera Mini

Versions


Release date
Version number
Notes
9 February 20111.0
January, 20121.0 HP open sources Enyo under the Apache 2.0 license
25 January 20122.0b
  • first Enyo 2 beta version
  • porting Enyo 1 to work with all modern web environments, including iOS, Android, Safari, Firefox, Chrome, and IE8+
  • July 18, 20122.0Enyo 2 production version
    August 30, 20122.0.1
    October 26, 20122.1
  • Chrome support
  • Theming more flexible, localization, and new widgets
  • Bootplate,Samples and other enhancements and fixes
  • November 28, 20122.1.1Kindle Fire HD and IE 10 support
    February 21, 20132.2
  • Windows 8, Windows Phone 8 and BlackBerry 10 support
  • Infinite scrolling list with drag and drop reordering
  • Smaller enhancements and fixes
  • October 18, 20132.3.0-pre.10
  • support for the MVC model of application development
  • Robust data layer support
  • Moonstone and Spotlight support.
  • Tightly bound to the release and production schedule for the LG webOS TV
  • February 5, 20142.4.0-pre.1Focus for the cross-platform Enyo community.
    December 11, 20142.5.1.1
  • Focus on performance and stability.
  • Improvements to the data layer
  • April, 20162.7
  • Core-level optimization
  • New and modified core and Moonstone controls
  • SVG library
  • Accessibility support