Difference between revisions of "Architecture"

From WebOS-Ports
Jump to navigation Jump to search
m (→‎WebOS Ports Design Architecture: Restore an intended link)
Line 35: Line 35:
[[System_Upgrade|System Upgrade]]
[[System_Upgrade|System Upgrade]]
[[Enyo Ports UI|Enyo Ports UI]]
[[Human Interface Guidelines]]
== API Design ==
== API Design ==

Revision as of 20:40, 5 November 2015

WebOS Ports Design Architecture

Here will be a description of the architecture of WebOS Ports. How all bits and pieces interact with each other.

WebOS Ports Architecture

Luna Next

Galaxy Nexus Communication Infrastructure

Building Custom LunaSysMgr for Open webOS

GPU Drivers

Commits History

OE Benchmark

Porting Guide for new devices

Chinese, Japanese, Korean Input Methods

Submitting Contributions

Schedules/Beta Feature Plan



LS2 Debug Commands

Upstream Submission Status

System Upgrade

Human Interface Guidelines

API Design

Initially, we'll re-implement the webOS APIs. We'll need some new APIs that are straightforward extensions of existing APIs (for example, Proposed Synergy for Tasks). Other new APIs could substantially alter the app environment and user experience (for example, Proposed Lune OS Intents). These must be carefully thought out, so they improve the environment for app developers and user.

When designing new APIs and data structures, favor URLs. For example, an avatar or attachment could be pulled from the net (http: or git: URL schemes) as easily as a file (file: URL scheme) or immediate data (data: URL scheme). A contact URL could be an email (mailto: URL scheme), IM address (im:, aim:, sms:, gg:, irc: URL schemes) telephone (tel:, skype: or rtsp: URL schemes) or a web page (http: URL scheme). Only schemes that make sense in a given context need to be supported. This will make our APIs and data structures more future-proof.


Various info bits that still need further working out and documentation:

OTA API Blueprint

Proposed Lune OS Intents

Proposed Synergy for Tasks

Proposed Swipe UI Convention

Send URL

A replacement for the Touch-to-share API is needed, which accommodates various transmission media, such as Bluetooth, ZeroConf (Bonjour), QR codes and Google Tone or Chirp for iOS. The send side is probably best handled via the Share Intent. The receive side requires some thought: always-on is a security risk and wasteful of power, while activating a receive mode needs to be easy. It might or might not be useful to send or listen using several media at once.