Prototype of an Open Web App Ecosystem
The open Web is a great platform for rich applications. It would be even better if it had additional capabilities to ease discovery, acquisition, installation and use of apps, while also enabling monetization for developers. We designed and built a prototype of a system for open Web apps: Apps built using HTML/CSS/JavaScript that work both on computers and mobile phones, have many of the characteristics that users find compelling about native apps and provide developers with open and flexible distribution options.
Today, we are releasing technical documentation of the proposed system and a developer preview prototype that allows you to install, manage and launch Web apps in any modern desktop or mobile browser (Firefox 3.6 and later, Firefox for mobile, Internet Explorer 8, Chrome 6, Safari 5, Opera 10 and WebKit mobile). This prototype provides a simple mechanism to support paid apps and authentication features to allow apps to log users in upon launch.
The design proposed here provides the following capabilities and enables a new category of what we call “Open Web Apps” — apps that are truly of the Web.
Open Web Apps:
- Are built using HTML, CSS and JavaScript.
- Can be “installed” to a dashboard within your mobile or desktop Web browser, or to your native OS desktop or mobile home screen.
- Work in all modern Web browsers, while enabling each browser to compete on app presentation, organization and management user interfaces.
- Support paid apps by means of an authorization model that uses existing identity systems like OpenID.
- Support portable purchases: An app purchased for one browser works in other browsers, and across multiple desktop and mobile platforms without repurchase.
- Can request access to one or more advanced and/or privacy-sensitive capabilities that they would like access to (like geolocation) which the system will mediate, giving the user the ability to opt-in to them if desired.
- Can be distributed by developers directly to users without any gatekeeper, and distributed through multiple stores, allowing stores to compete on customer service, price, policies, app discoverability, ratings, reviews and other attributes.
- Can receive notifications from the cloud.
- Support deep search across apps: Apps can implement an interface that enables the app container (generally the Web browser) to provide the user with a cross-app search experience that links deeply into any app that can satisfy the search.
Check out this demo to see more about our Open Web App prototype:
Please join us in exploring this Open Web App concept. Head over to the Mozilla Labs forum, leave a comment here and follow the Mozilla Labs blog for updates. As with everything Mozilla does, we’re developing this prototype and design for the public benefit in the open and we look forward to making this concept a reality.