Apps/WebRT: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(simplify structure)
 
(16 intermediate revisions by 4 users not shown)
Line 1: Line 1:
WebRT is a project to build a desktop web application runtime that provides webapps with a native-like look and feel along with platform integration APIs on Windows, Mac, and other desktop platforms.
The Web Runtime project built application runtimes that enabled users to install and run Open Web Apps on Android, Windows, Mac, and Linux. The runtime for desktop OSes shipped as part of Firefox for Desktop in 2012, while the runtime for Android shipped as part of Firefox for Android in 2013. Both projects were explicitly ended in 2015, and the runtimes were removed from Firefox in 2016.
 
(The related '''WebRT Android''' project aims to integrate a runtime for Android into Fennec. See its [[Apps/WebRTJunePRD|Product Requirements Document]] for more information.)
 
The runtime comprises the '''navigator.mozApps DOM API''' through which the Mozilla Marketplace, other webapp stores, and webapps themselves request installation; an '''installer feature of Firefox''' that installs webapps on the native platform; a '''stub executable launcher''' bundled with Firefox that the installer copies to an appropriate location for each webapp it installs; and a '''xulapp shell''' that loads a webapp when a user starts it.
 
== Feature Drivers ==
 
The feature drivers are responsible for making sure the runtime gets completed and shipped with Firefox. They triage bug reports and enhancement requests, find engineers to tackle issues, and communicate status updates to the Apps initiative and Mozilla community.
 
The feature drivers are:
 
* Jen Arguello (ticachica), Product Manager
* Bill Walker (bwalker), Engineering Manager
* Jason Smith (jsmith), QA Engineer
* Myk Melez (myk), Technical Lead
 
== Discussions ==
 
Discussions on runtime design and development topics take place in a variety of public forums:
 
* [http://chat.mibbit.com/?channel=%23openwebapps&server=irc.mozilla.org #openwebapps channel on irc.mozilla.org]
* [http://www.mozilla.org/about/forums/#dev-webapps dev-webapps discussion forum]
* [[Apps/StatusMeetings/Engineering|weekly Apps Engineering meeting]]
 
Status updates are also presented at the weekly [[Firefox/Planning|Product Coordination]] and [[Platform#Meetings|Firefox/Gecko Development]] meetings.
 
== Bug Reporting ==
 
Bugs related to the runtime are typically filed in the following three components:
 
* [https://bugzilla.mozilla.org/enter_bug.cgi?product=Firefox&component=Webapp%20Runtime Firefox/Webapp Runtime]: the stub executable launcher (i.e. the binary and related files that Firefox creates for each webapp you install to your local computer) and the XUL shell (i.e. the XULRunner application that the launcher uses to load a webapp and provide it with native integration APIs)
* [https://bugzilla.mozilla.org/enter_bug.cgi?product=Firefox&component=Web%20Apps Firefox/Web Apps]: Firefox's webapp installer (i.e. the feature that creates a launcher when the user approves an installation request)
* [https://bugzilla.mozilla.org/enter_bug.cgi?product=Core&component=DOM:%20Mozilla%20Extensions Core / DOM: Mozilla Extensions]: Gecko's navigator.mozApps DOM API (i.e. the API that web pages use to request webapp installation)
 
== Triage ==
 
Drivers triage bug reports on a regular basis using the following bug queries:
 
* [https://bugzilla.mozilla.org/buglist.cgi?order=Assignee;resolution=---;status_whiteboard_type=allwordssubstr;status_whiteboard=%5Bblocking-webrtdesktop1%2B%5D open v1 blockers, ordered by assignee]
* [https://bugzilla.mozilla.org/buglist.cgi?priority=P1;priority=P2;priority=P3;priority=P4;priority=P5;order=priority,bug_id;resolution=---;component=Web%20Apps;component=Webapp%20Runtime;product=Firefox open prioritized bugs, ordered by priority and bug number]
* [https://bugzilla.mozilla.org/buglist.cgi?priority=--;order=Bug%20Number;resolution=---;component=Web%20Apps;component=Webapp%20Runtime;product=Firefox open unprioritized bugs, ordered by bug number]
* [https://bugzilla.mozilla.org/buglist.cgi?priority=--;keywords=productwanted;keywords_type=nowords;resolution=---;component=Web%20Apps;component=Webapp%20Runtime;product=Firefox open uprioritized bugs, excluding ''productwanted'', ordered by bug number]
* [http://bit.ly/MFpVX4 Desktop WebRT Whiteboard Bugs]
 
== Source Code ==
 
The source code for the runtime lives in the [http://hg.mozilla.org/mozilla-central/ mozilla-central Mercurial repository] in the following files and directories:
 
* [https://mxr.mozilla.org/mozilla-central/source/webapprt/ /webapprt]: stub executable launcher and XUL shell
* [https://mxr.mozilla.org/mozilla-central/source/browser/modules/webappsUI.jsm /browser/modules/webappsUI.jsm]: Firefox webapp installation UI
* [https://mxr.mozilla.org/mozilla-central/source/browser/modules/WebappsInstaller.jsm /browser/modules/WebappsInstaller.jsm]: Firefox webapp installer
* [https://mxr.mozilla.org/mozilla-central/source/dom/apps/ /dom/apps]: Gecko navigator.mozApps DOM API
 
Engineers develop it in accordance with standard Mozilla development best practices, including the [https://developer.mozilla.org/En/Mozilla_Coding_Style_Guide Coding Style Guide], the [https://developer.mozilla.org/En/Developer_Guide/Committing_Rules_and_Responsibilities Committing Rules and Responsibilities], and Firefox's [[RapidRelease|rapid release schedule]].

Latest revision as of 16:46, 7 April 2016

The Web Runtime project built application runtimes that enabled users to install and run Open Web Apps on Android, Windows, Mac, and Linux. The runtime for desktop OSes shipped as part of Firefox for Desktop in 2012, while the runtime for Android shipped as part of Firefox for Android in 2013. Both projects were explicitly ended in 2015, and the runtimes were removed from Firefox in 2016.