Faculty Profile prashantha K EEE dept Sri Sairam college of Engineering
Enyo Hackathon Presentation
1. Ben Combee, Developer Platform Architect
Enyo Framework Team, webOS Group, HP
THE ENYO HACKATHON
MARCH 4, 2012
NYC + AROUND THE WORLD
2. Transforming to Open webOS
Look for partnerships with hardware
companies
Release our source in a form that’s usable
Removing dependencies on closed parts
Find ways to be compatible with web
standards where possible
Work closely with webOS Internals
3. enyojs.com
Heart of our new open source project
Apache 2.0 license
Code changes visible on github.com
Actively seeking issue reports
and pull requests
Active forum at forums.enyojs.com
Blog at blog.enyojs.com, feature mix of
technical and marketing posts
4. Enyo 1.0
Built on WebKit
Specialized for webOS 3.0
Supported on webOS 1.4.5+ at a “best effort”
level
Can work on iOS, Android, Chrome, other
WebKit platforms with varying levels of
performance
Looking for pull requests!
Use StyleMatters sample for widget examples
5. Enyo 2.0
Built to be cross-platform from the start
A flexible core emphasizing component-
based applications
Can be used for both self-contained apps and
websites
Keep the core small
Extended functionality provided by libraries
6. Onyx UI Library
First release last week
Our cross-platform widget set
Professionally designed by webOS HI team
Not all Enyo 1.0 widgets implemented… yet
Use OnyxSampler for examples of how
widgets look and can be used
7. Other Libraries
Layout: cross-browser widget sizing
Canvas: support for <canvas> drawing
Extra: collection of useful methods
Fu: simple UI library for first examples
More showing up on github all the time!
8. Web APIs
Use HTTP GET/POST/PUT/DELETE
Send parameters to a URL endpoint
Get back a response, usually in XML or JSON
Accessed through XmlHttpRequest from
browser or tools like curl from command line
Often require an API key
Commonly use OAuth for user identification
9. Web APIs: Useful Tools
Curl (available in webOS shell too)
Hurl.it (like curl, but a web-based app)
Mashery API Explorer
Chrome Developer Tools
Run chrome with “--allow-file-access-
from-files --disable-web-security
--enable-file-cookies” flags to allow
cross-domain XHR and running like app
10. enyo.WebService (1.0)
Component that you add to your app
Derived from enyo.Service
Can set many parameters up front or set
them when you make the .call
onResponse, onSuccess, and onFailure
url, method, handleAs, headers, username,
password properties
11. enyo.xhrGet/xhrPost (1.0)
Simple way to make a GET or POST request
without creating a new object
Allows passing callback function instead of
setting up event handlers
12. enyo.Ajax (2.0)
Non-component wrapper for
XmlHttpRequest
Similar parameters to enyo.WebService
.go() starts request
.response(), .error() register callbacks
User in Flickr example on enyojs.com
13. Enyo.JsonpRequest (2.0)
Way to call JSONP-formatted web services
These allow cross-domain calls
Response is executed as a <script>
Part of the “extras” library, not in core
Mainly useful for web pages
Used in the enyojs.com tutorial
14. Getting Help
Post questions to forums.enyojs.com
#enyojs channel on IRC (freenode)
webchat.freenode.net/?channels=enyojs
3PM EST Q&A Session
Look at samples on github.com/enyojs