This page aims to track all ongoing Open Web Apps documentation work; each section covers a different topic/task area. For more information about specific API documentation, you should cross reference this page with the API documentation status page.
Summary
Pages | No tags | Needs* tags | Missing tags | Editorial reviews | Technical reviews | Outdated pages | Dev-doc-needed bugs | Documentation requests |
---|---|---|---|---|---|---|---|---|
105 | 3 (3%) | 7 (7%) | 0 (0%) | 2 (2%) | 12 (12%) | 29 (28%) | 23 (22%) | 2 (2%) |
See also localization status of this section.
No tags
Found 3 pages. Learn more about how to tag pages.
Needs* tags
Found 7 pages. Learn more about how to deal with meta-tags.
- NeedsContent
- NeedsExample
- NeedsExamples
Editorial reviews
Found 2 pages. Learn more about how to do an editorial review.
Technical reviews
Found 12 pages. Learn more about how to do a technical review.
- Mobile First
- H.264 support in Firefox
- Audio and video manipulation
- Optimizing for high and low network speeds
- Models and application data
- Styling your Ember app
- App performance validation
- Performance fundamentals
- Checking when a deadline is due
- Detecting when to notify users
- Notifying users via the Notification and Vibration APIs
- Using Alarms to notify users
Outdated pages
Found 29 pages. These pages haven't been updated in over a year. Outdated pages can have problems with both content and format. Look at these pages and consider: Is this page talking about the Web of today? Does it look consistent with newer pages in this topic area? If not, make any needed changes.
- Advanced topics
1108 days old - App developer tutorials
528 days old - Audio and video app tutorials
528 days old - Debugging the app
528 days old - Games
528 days old - Serpent game
528 days old - General app development tutorial
528 days old - App code
591 days old - App design
591 days old - Configuring your development environment
591 days old - Create your app!
1265 days old - Creating the Area Tweet app
591 days old - Debugging the app
591 days old - Foundations of an HTML5 Web app
591 days old - Testing the app
591 days old - Media demo app tutorial
528 days old - Weather app tutorial
1141 days old - App layout
719 days old - Getting started with app development
1200 days old - Identity integration for apps
1243 days old - Index
821 days old - Mobile First
646 days old - Rec Room - Accessing Phone APIs and Hardware
736 days old - Rec Room - Animation and Graphics
736 days old - Rec Room - Data Management and Offline
736 days old - Rec Room - Networking
735 days old - Rec Room - User Interface and Layout
736 days old - Security guidelines
411 days old - Web app basics
719 days old
Dev-doc-needed bugs
Found 23 bugs. Learn more about how to resolve a dev-doc-needed bug.
Bug | Summary | Release |
---|---|---|
820206 | Validate "Webapps:*" message parameters in the parent process | B2G C4 (2jan on) |
824697 | Installing a Hosted App that Preloads the Appcache, updating the appcache, manual syncing the app - no updates found | B2G C4 (2jan on) |
831246 | Enforce the mime type check for webapp manifests same and cross origin, not just cross-origin | --- |
772358 | Enumerate elevated privileges in manifest | --- |
790558 | Add install/update API | --- |
768931 | Each permission in the manifest should support a corresponding "intended usage" | --- |
1173666 | Expose the URL of the page that calls mozApps.connect to the app exposing the port | mozilla42 |
1169344 | Allow server apps to restrict access to their IAC ports | mozilla42 |
1137498 | Prevent updates changing short_name | mozilla39 |
1000305 | Implement new API function for fetching app icons | mozilla38 |
982874 | Import / export API for apps | mozilla36 |
965970 | Add support to compile asm.js code at install/update time | mozilla31 |
757226 | Implement mozApps app.replaceReceipt() | mozilla29 |
849335 | Make the FMRadio API privileged | mozilla22 |
821288 | Strange behavior when installing multiple hosted apps from the same origin | mozilla21 |
826555 | Ensure that updates can't rename an app | mozilla21 |
806624 | (dev mode only) Support using hosted apps with certified permissions | mozilla19 |
789527 | Change the way we install packaged apps | mozilla18 |
790870 | Implement install/update API during installation of hosted apps | mozilla18 |
779982 | Change behaviour of getSelf and add amInstalled function | mozilla18 |
786710 | The launch_path of a manifest allows for absolute URLs to launch an app at - this should not be allowed | mozilla18 |
781379 | getNotInstalled should be under mgmt and return apps from all origins | mozilla17 |
772363 | Implement installation API for packaged apps | mozilla16 |
Browse as bug list.
Documentation requests
Found 2 bugs. Documentation request bugs can contain various kinds work related to MDN pages. Read through the bug and ask questions in the bug if in doubt.
Bug | Summary |
---|---|
901039 | Document FxOS changes for user agents |
1225601 | DOMApplication/DOMApplicationsRegistry should document download-related properties and methods - Web APIs | MDN |
Browse as bug list.
Localizations
Please help us to localize this documentation into different languages. Read more about how to translate.
Language | Pages | Translated | Translations up to date |
---|---|---|---|
af | 105 | 0 (0%) | 0 (0%) |
bn-BD | 105 | 12 (11%) | 2 (16%) |
de | 105 | 14 (13%) | 5 (35%) |
es | 105 | 18 (17%) | 4 (22%) |
fa | 105 | 5 (4%) | 0 (0%) |
fr | 105 | 48 (45%) | 25 (52%) |
it | 105 | 9 (8%) | 0 (0%) |
ja | 105 | 48 (45%) | 11 (22%) |
ko | 105 | 7 (6%) | 1 (14%) |
pl | 105 | 2 (1%) | 1 (50%) |
pt-BR | 105 | 18 (17%) | 5 (27%) |
pt-PT | 105 | 6 (5%) | 0 (0%) |
ro | 105 | 2 (1%) | 0 (0%) |
ru | 105 | 11 (10%) | 4 (36%) |
zh-CN | 105 | 13 (12%) | 4 (30%) |
zh-TW | 105 | 14 (13%) | 2 (14%) |
Content outline
- Green: complete
- Yellow: in progress
- Red: not started
- Number of stars against article name indicates priority: *** is high, ** is medium, * is low
Build overview
The landing page provides a list of links and description to each section consisting the AppCenter/Build.
App layout
This section is not in the menu: consider to add it or link it by the Build overview
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
**Using the full screen | ||||||
*Dealing with portait and landscape-speific layouts | ||||||
*Serving a separate view for specific devices |
Installable apps for Firefox OS
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
**Creating an application update system | There is already some minimal info at updating apps, but this could easily be improved upon. | Julien Wajsberg has written a nice little template that allows you to do this, and has agreed to write some notes and a finished demo for us to publish on the subject. His early work on this is at self-updating-packaged-app | Install API, done | update |
Basic data flow
The landing page is ok, but a bit sparse, and would need better examples and recommendations.
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
HTTP basics | Karl Dubost wrote some really good HTTP articles for dev.opera.com. Perhaps we could erpublish those? |
|
||||
Ajax basics (architecture, technique) | ||||||
Data storage systems and Ajax | ||||||
Handling offline Ajax and timeouts | ||||||
Handling data within the browser | Notes: persistant or temporary; technique with cookies vs. storage vs. IndexedDB vs. data attributes). For offline stuff, defer to the Offline section | |||||
Advanced Ajax topics, such as UI interaction and perceived performance | ||||||
Links to other useful demos and resources |
Gather and modify data
Chris and Franciov took care of the landing page.
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
Reading and writing files on your device | Reference documentation is okay |
FileHandle API, currently in draft Device Storage API, done |
Files, Device Storage | |||
Plotting yourself on the map |
Franciov has written the Plotting yourself on the map article+demo. |
Chris has written a simple geolocation demo. |
Geolocation API, done (see Using geolocation) | geolocation api | ||
Keep it level: responding to device orientation changes | Franciov has written the Keep it level: responding to device orientation changes article+demo. | Rolling ball | Detecting device orientation, done | device orientation | ||
Updating phone contacts from the web | Franciov has written the Updating phone contacts from the web article+demo, to be kept up-to-date with the latest W3C specifications as soon as they are stable/implemented. |
baron0 (IRC) might be working on a demo |
Contacts API, completed, to be kept up-to-date with the latest W3C specification and bugzilla bugs | Contact | ||
Retrieving Battery status information | Franciov has written the Retrieving Battery status information article+demo, to be kept up-to-date with the latest W3C specifications as soon as they are stable/implemented. |
Chris has written a simple Firefox OS app that shows battery level and charged status in two different ways. |
Battery Status API, completed, to be kept up-to-date with the latest W3C specification and bugzilla bugs | Battery | ||
Optimizing for high and low network speeds | Franciov has written the Optimizing for high and low network speeds article+demo, to be kept up-to-date with the latest W3C specifications as soon as they are stable/implemented. | Net Pics | Network Information API, done, to be kept up-to-date with the latest W3C specification. | network information | ||
Near, or far? responding to proximity | Franciov has written the Near or far? Responding to proximity article+demo. | Proximity API, done | proximity | |||
Responding to light conditions | Franciov has written the Responding to light conditions article+demo, to be kept up-to-date with the latest W3C specifications as soon as they are stable/implemented. | Xmas Tales | Using Ambient Light Events, completed, to be kept up-to-date with the latest W3C specifications, mailing-list discussion, and bugzilla bug | Ambient light | ||
Web activities can probably fit in here as well. |
User notifications
Chris and Franciov took care of the landing page.
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
***Notifying users, via system notifications and alarms | Three articles written by Chris, covering the general area of detecting when to notify users, how to detect when a deadline is up, and using the notification and vibration apis. We still to write an article about the Alarm API. |
Time/Clock API (Time and Clock), done Notification API (Using Web Notifications), needs update, see bug Alarm API (Alarm), done |
clock, notifications, alarm | bug 899574 | ||
**Wake me up! starting apps in response to events | Simple Push API (Simple Push API), draft | push | ||||
**Providing user feedback via vibrations | Vibration API, done | vibration |
User input and controls
Chris and Franciov took care of the landing page.
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
***Fullscreen applications | Fullscreen API, draft | Fullscreen | ||||
**Locking the screen orientation | Screen orientation API (see Managing screen orientation) | screen orientation | ||||
*Locking the pointer to simulate 3D or locational movement |
Franciov: the API docs provides a simple pointer lock demo to show you how to use it to set up a simple control system. The demo uses JavaScript to draw a ball inside a element. When you click the canvas, pointer lock is then used to remove the mouse pointer and allow you to move the ball directly using the mouse. |
Pointer Lock API (was Mouse Lock API), draft | pointer lock | |||
***Drag and drop: a game or a survey implementing drag&drop would be cool to show | Drag Operations, updated in Q3 2014 | |||||
***Touch events: a photogallery or a game based on touch events would be cool to show | are working on it at the HackOnMDN Berlin | Touch Events, article in need of technical review | ||||
*contentEditable | Franciov added a link to a html5demos.com example showing how contenteditable can be used to create an editable document section, the state of which is then saved using LocalStorage. | contentEditable demo | contentEditable |
Offline apps
Chris took care of the landing page.
Note: check the offline app strategies on Mozilla's Google Drive account.
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
***Detecting whether your device is offline | XHR, online and offline events, done | offline | ||||
***Offline resources: AppCache versus installable apps. Detecting which one you need |
AppCache, done Installable apps, done |
Application Cache, installable apps | ||||
**Storing simple data with localstorage | basic DOM storage written — a number of options to explore here. | localstorage | ||||
**Stored complex structured data with IndexedDB |
eLibri: A powerful library and eBook reader application, written by Marco Castelluccio, winner of the IndexedDB Mozilla DevDerby. Chris has written a simple to do list app that stores data using IndexedDB (hasn't everyone?) Shuhao Wu is also writing an account of Offline SUMO for MDN |
basic /IndexedDB done, will need an update once the WebIDL switch has occurred | indexeddb | Shuhao started writing on about September 10th, check in with him soon. | ||
*Persisting data from on-device storage to a server-side database | Not sure how possible this is, but it sounds like a great idea to work it out. |
|
||||
***Offline reference app: It would be great to explore Offline best-practices and provide a decent reference app. |
Audio and video delivery
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
***Taking pictures with your webcam | Chris has mostly written a gUM demo. Needs picture storage built into it. Also would be nice to release it after FxOS starts to support gUM! |
Camera API (see gUM, done, currently doesn't work in FxOS Web Activities, done |
Camera, Web Activities, getUserMedia | |||
**More audio stuff, including Web Audio API. A simple radio, dictaphone, and child's robot voice changer type app all sound like good ideas |
Web Audio API, done, cross browser code available. Some <audio> material available, but could be better |
audio, web audio api | ||||
**More video stuff. A custom video player would be good, as well as strategies for serving video to low powered devices |
Some <video> material available, but could be better |
video |
Audio and video manipulation
Articles in this section
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
**Canvas/WebGL stuff. An instagram API using canvas would be cool to show. |
Canvas material WebGL material |
canvas, webgl | ||||
*Let's talk! Creating real time phone and video conferences | Beginner's material added, reference not done. | webrtc |
Advanced network communications
The landing page is TBD: consider integrating this section into "Basic data flow", to be renamed as "Data Flow and Network Communication".
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
*Running tasks in the background with web workers, etc - hard on mobile, battery eating | ||||||
**Web sockets / TCP sockets: showing how to use sockets for "Internet of Things" applications would be cool | ||||||
CORS | ||||||
System Ajax | ||||||
Web RTC: showing how to implement a peer-to-peer communication in a real-world example app would be interesting |
Develop games
See https://wiki.mozilla.org/MDN/Development/Game_dev_zone for a wider discussion around games dev docs.
Localization
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
TBD | etc. |
|
Porting
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
Porting Chrome apps to open web apps | Chris has written the starter article, with input from David Clarke. Mark Giffin also interested. | David has written a hello world port of the Chrome hello world, but we need more. |
App performance
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
TBD | etc. |
|
App development FAQ
This section contains a large set of FAQs.
App payments
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
TBD | etc. |
|
Firefox Marketplace
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
TBD | etc. |
|
Firefox OS partners
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
TBD | etc. |
|
User services
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
Logging users in with Persona |
There is some Persona information on MDN already (see Identity integration). |
persona |
UP/Cloud apps/personalisation
Mark Mayo did an interesting talk at the Toronto Mozilla summit about the Mozilla cloud technologies — Sync, Persona, push messages, etc.
Note: these articles probably need arranging in a different way, as they could potentially apply to any kind of app, and aren't really a category in their own right. The Mozilla cloud stuff could possibly have its own landing page eventually, although bear in mind that persona already has it's own landing page.
Article | Content status | Demo/code status | Relevant API doc status | Tag | Schedule | Relevant bugs |
---|---|---|---|---|---|---|
Using/Updating sync |
|
|||||
Getting updates (Simple Push, push server, etc.) Push API messages don't contain data, they just tell the process to wake up | ||||||
Using Persona in an app | ||||||
User personalization (UP) | ||||||
geolocation/stumbling/war driving - crowd sourced geodata. |
Topics for coverage in near future
- B2G telephony API conference call extensions bug 772765
- RDS extensions to the WebFM API
- Microphone API
- Datastore API bug 871445
- Shared workers bug 643325
- Temp storage for IndexedDB bug 785884
- Draft messages for SMS/MMS bug 879143
Weekly Apps docs meetings
Please note: This meeting is no longer happening on a regular basis, as the need just wasn't really there for it. A meeting will be annouced and run at any time a need is seen for one.
We have a recurring weekly meeting to discuss apps documentation, and everyone is welcome to join:
Most Thursdays at 9am West Coast US / Midday East Coast US / 5pm UK / 6pm Europe
- Location: Chris Mills' Vidyo room. Ping chrismills about it in the #devmo IRC channcel
- For external meeting access: click on the link below to attend: https://v.mozilla.com/flex.html?roomdirect.html&key=jk4t3cgzH5P3. If you do not have a user account, please enter your name in the "Guest Name" field and then click "Join".
- To join from a telephone, dial the following number: +1 650 903 0800, x92 99905 or +1 800 707 2533, pin 369 - conf 99905
Agendas/notes:
- 20th March 2014
- 13th March 2014
- 6th February 2014
- (couple of weeks missed here, due to traveling)
- 9th January 2014
- 12th December 2013
- 5th December 2013: It's back on. Woot!
- 28th November 2013: Ummmm, cancelled, due to Mozilla meeting free week.
- 21st November 2013: CANCELLED DUE TO TEAM LACK OF AVAILABILITY (Chris Mills out getting laptop fixed)
- 14th November 2013: CANCELLED DUE TO CORE TEAM LACK OF AVAILABILITY
- 7th November 2013
- 24th October 2013
- 17th October 2013
- 10th October 2013
- 3rd October 2013: CANCELLED, DUE TO MOZILLA SUMMIT ATTENDANCE! Normal meetings will resume next week.
- 26th September 2013; please note that Chris Mills (usual chair) is away for this meeting (speaking at an event around the same time), but Jeremie is handling it
- 19th September 2013