Enyo is an
open source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
JavaScript framework
A web framework (WF) or web application framework (WAF) is a software framework that is designed to support the development of web applications including web services, web resources, and web APIs. Web frameworks provide a standard way to build and ...
for cross-platform mobile, desktop, TV and web applications emphasizing object-oriented encapsulation and modularity. Initially developed by
Palm
Palm most commonly refers to:
* Palm of the hand, the central region of the front of the hand
* Palm plants, of family Arecaceae
** List of Arecaceae genera
**Palm oil
* Several other plants known as "palm"
Palm or Palms may also refer to:
Music ...
, it was later acquired by
Hewlett-Packard
The Hewlett-Packard Company, commonly shortened to Hewlett-Packard ( ) or HP, was an American multinational information technology company. It was founded by Bill Hewlett and David Packard in 1939 in a one-car garage in Palo Alto, California ...
in April 2010 and then released under an Apache 2.0 license. It is sponsored by
LG Electronics
LG Electronics Inc. () is a South Korean Multinational corporation, multinational major appliance and consumer electronics corporation headquartered in Yeouido-dong, Seoul, South Korea. LG Electronics is a part of LG, LG Corporation, the fourth ...
and Hewlett-Packard.
Bootplate
''Bootplate'' is a simplified way of creating an app, providing a skeleton of the program's folder
tree
In botany, a tree is a perennial plant with an elongated stem, or trunk, usually supporting branches and leaves. In some usages, the definition of a tree may be narrower, e.g., including only woody plants with secondary growth, only ...
. 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
webOS, also known as LG webOS, is a Linux kernel-based multitasking operating system for smart devices, such as smart TVs, that has also been used as a mobile operating system. Initially developed by Palm, Inc. (which was acquired by Hewlett ...
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
In computing, internationalization and localization (American English, American) or internationalisation and localisation (British English, British), often abbreviated i18n and l10n respectively, are means of adapting to different languages, regi ...
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 (WIP).
Use
The following projects are built with Enyo:
*
LG Smart TV
LG Corporation (or LG Group), formerly known as Lucky-Goldstar, is a South Korean Multinational corporation, multinational conglomerate (company), conglomerate founded by Koo In-hwoi in 1947 and managed by successive generations of his family. ...
apps
*
Openbravo Mobile and Web POS
*
xTuple ERP Web and Mobile App
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
Hello is a salutation or greeting in the English language. It is first attested in writing from 1826.
Early uses
''Hello'', with that spelling, was used in publications in the U.S. as early as the 18 October 1826 edition of the '' Norwich Cou ...
' 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 (PhoneGap),
Android 4+ (PhoneGap),
Windows 8.1 Store App and
Windows Phone 8
Windows Phone 8 is the second generation of the Windows Phone mobile operating system from Microsoft Corporation, Microsoft, released on October 29, 2012. It runs on the Windows NT kernel and is the successor to Windows Phone 7. It was the first ...
(PhoneGap),
Blackberry 10
BlackBerry 10 (BB10) is a proprietary mobile operating system for the BlackBerry line of smartphones, both developed by BlackBerry Limited (formerly known as Research In Motion). Released in January 2013, BlackBerry 10 is a complete rework from t ...
(PhoneGap), Chrome Web Store App, LG
webOS
webOS, also known as LG webOS, is a Linux kernel-based multitasking operating system for smart devices, such as smart TVs, that has also been used as a mobile operating system. Initially developed by Palm, Inc. (which was acquired by Hewlett ...
.
Desktop Browsers:
Chrome (latest),
Safari
A safari (; originally ) is an overland journey to observe wildlife, wild animals, especially in East Africa. The so-called big five game, "Big Five" game animals of Africa – lion, African leopard, leopard, rhinoceros, African elephant, elep ...
(latest MAC),
Firefox
Mozilla Firefox, or simply Firefox, is a free and open-source web browser developed by the Mozilla Foundation and its subsidiary, the Mozilla Corporation. It uses the Gecko rendering engine to display web pages, which implements curr ...
(latest),
IE11
Internet Explorer 11 (IE11) is the eleventh and final version of the Internet Explorer web browser, by now retired. It was initially included in the release of Windows 8.1, Windows RT, Windows RT 8.1 and Windows Server 2012 R2 on October 17, 2013 ...
IE10, IE9, IE8. (Win).
Mobile Browsers: iOS7, iOS6, Android 4+ Chrome,
Kindle Fire
The Amazon Fire, formerly called the Kindle Fire, is a line of tablet computers developed by Amazon. Built with Quanta Computer, the Kindle Fire was first released in November 2011, featuring a color 7-inch multi-touch display with IPS tech ...
and HD, Blackberry 10, IE11 (Windows 8.1),IE10 (Windows Phone 8).
*Tier 2 Supported
Packaged Apps:
iOS5,
iOS4, Android 2.3,
Firefox OS
Firefox OS (project name: ''Boot to Gecko'', also known as ''B2G'') is a discontinued Open-source software, open-source operating system made for smartphones, tablet computers, smart TVs, and Matchstick TV, dongles designed by Mozilla and exte ...
(pre-release), Tizen OS (pre-release), Windows 8 Store App, Windows (Intel AppUp).
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
The BlackBerry PlayBook is a mini tablet computer that was developed by BlackBerry. It was manufactured by Quanta Computer, an original design manufacturer (ODM). 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
See also
*
PhoneGap
*
Yeoman.io
*
Backbone.js
*
React (JavaScript library)
React (also known as React.js or ReactJS) is a free and open-source front-end JavaScript library that aims to make building user interfaces based on components more "seamless". It is maintained by Meta (formerly Facebook) and a community of ...
References
External links
*
{{HP
Android (operating system) development software
BlackBerry development software
Integrated development environments
JavaScript libraries
Television technology