Gaia: Difference between revisions

(Added link to meeting details)
 
(219 intermediate revisions by 24 users not shown)
Line 1: Line 1:
== Hacking Gaia ==
Gaia is the collection of [https://developer.mozilla.org/apps web apps] which make up the front end of [http://www.mozilla.org/firefoxos/ Firefox OS] (codenamed [https://wiki.mozilla.org/B2G Boot to Gecko]).


see [[Gaia/Hacking]]
==Contributing==
* See [[Gaia/Hacking]] to get started hacking
* See [[Gaia/UxContributing]] to get started contributing to UX
* See [[B2G#Meetings]] for meeting details


=== Coding Style ===
== Admin ==
* Background:
* [[Gaia/UXTeam|UX Team]]
** [[MDC:Developer Guide/Coding Style#General practices]]
* [[Gaia/Meeting_Notes|Meeting Notes]]
** [[MDC:Developer Guide/Coding Style#JavaScript practices]]
** [[MDC:Developer Guide/Coding Style#Naming and formatting code]]


* make sure HTML files are declared <!DOCTYPE html> (i.e., HTML5).  IE9+ will load them in compatibility mode otherwise.
== UX Specifications (Wireframes) ==
Here are some guidelines to finding and using the latest UX specifications, wireframes and mock-ups.


* add a <code>"use strict";</code> statement (exactly that!) to the top of your JS files
* TEMPORARILY DELETED; working on recovery: All UX specifications, patterns and building blocks are posted in the User Experience section of the Mozilla Developer Network (MDN) at https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_OS/UX.


* 2 spaces for indentation - do not use tab.
* All UX wireframes and mock-ups are stored in Box (not Dropbox). The main UX directory in Box is called "Firefox OS UX". The folders you should refer to are:
** 1.3 Specs: https://mozilla.box.com/s/0u4jt353ei9ov2c150ip
** 1.4 Specs: https://mozilla.box.com/s/yt7hl2leikogcuili7kp
** 1.5 Specs: https://mozilla.box.com/s/641ovdmhkancwvgxv0vq


* Line break are free (I promise) don't hesitate to use them to separate logical block inside your functions.
* The UX team has set Box folders as "Open Access". This allows view access to anyone with a link: You do not need to create or sign into a Box account in order to see UX specs and wireframes.  For the time being, we prefer to have these files be view only and, for design consistency, to have the UX team be the sole editors of these files.


* Files are named <code>like_this.js</code>.
* The UX team also attaches spec files to individual bugs AND includes a link to Box elsewhere in the bug: in the Attachments section or in Comments. The URLs of the Box folder will also be included on spec documents to ensure that anyone who sees only a PDF also knows where to get the latest specs.


* Use single quote instead of double quotes.
* Please '''contact Stephany''' (swilkes@mozilla.com) '''if you have any issues with access to Box'''.


* Additional rules:
== Shared Code / Styles ==
Bad:
if (expression) doSomething();


Correct:
The Gaia apps share/reuse some JS libraries (localization, gesture detection, etc.), localization strings (relative dates), and styles (from the building blocks effort, see above):
if (expression)
* [[Gaia/Shared|Shared]]
  doSomething();


=== Before submitting a patch ===
== Apps ==
On each javascript files you are adding or you have modified, run:
For the latest UX specifications, please visit: https://mozilla.box.com/s/44utizl9oz4eupyu3fuu
gjslint --nojsdoc my_file.js
* [[Gaia/Browser|Browser]]
* [[Gaia/Calendar|Calendar]]
* [[Gaia/Camera|Camera]]
* [[Gaia/Clock|Clock]]
* [[Gaia/Contacts|Contacts]]
* [[Gaia/Dialer|Dialer]]
* [[Gaia/Email|Email]]
* [[Gaia/FindMyDevice|Find My Device]]
* [[Gaia/FMRadio|FM Radio]]
* [[Gaia/Gallery|Gallery]]
* [[Gaia/Home|Home]]
* [[Gaia/Home/Lock|Lock]]
* [[Marketplace|Marketplace]]
* [[Gaia/Music|Music]]
* [[Gaia/PDFViewer|PDF Viewer]]
* [[Gaia/Settings|Settings]]
* [[Gaia/SMS|SMS/MMS]]
* [[Gaia/Video|Video]]


http://code.google.com/closure/utilities/docs/linter_howto.html
* [[Gaia/AppPermissions|App Permissions]]
 
=== Apps ===
== System ==
* Home screen (webGL cjones/ HTML vingtetun)
For the latest UX specifications, please visit: https://mozilla.box.com/s/44utizl9oz4eupyu3fuu
** Keyboard/IME (vingtetun/timdream)
* [[Gaia/System/Activities|Activities]]
*** Chinese ZhuYing IME (timdream)
* [[Gaia/System/Apps|Apps]] (install, permissions, errors, management, updates, uninstall, reinstall)
* Lock screen (gal)
* [[Gaia/System/Bluetooth|Bluetooth]]
* Dialer (vingtetun)
* [[Gaia/System/InternetSharing|Internet Sharing & Tethering]]
* SMS application (vingtetun)
* [[Gaia/System/ConsumptionControl|Consumption Control]]
* [[Gaia/Browser|Browser]] (benfrancis)
* [[Gaia/System/DoNotTrack|Do Not Track]]
* [[Gaia/Gallery|Gallery]] (benfrancis)
* [[Gaia/System/FileManagement|File Management]]
* [[Gaia/Camera|Camera]] (benfrancis)
* [[Gaia/Design/FirstRun|First Run Experience]]
* Media Player - benfrancis started on a music app which stores an Ogg file in IndexedDB, but someone else can take this up if they want, along with video playback
* [[Gaia/System/Hardware|Hardware]]
* App Manager (justindarc)
* [[Gaia/System/Keyboard|Keyboard]] (text-entry ui, predictive and corrective text capabilities)
* Settings (justindarc)
* Value selectors and Pickers
* UI/widget library (justindarc)
* [[Gaia/System/CursorManagement|Text-handling]] (cursor management and text selection)
* Apps store (justindarc)
* [[Gaia/System/Localization|Localization & Internationalization]]
* eBook reader
* [[Gaia/Notifications|Notifications]]
* [[Gaia/System/Performance|Performance]]
* [[Gaia/System/Sound|Sound]]
* [[Gaia/System/StatusBar|Status Bar]]
* [[Gaia/System/SystemOverlays|System Overlays]]
* Updates
** [[Gaia/System/Updates/Gonk|Gonk]]
** [[Gaia/System/Updates/GeckoGaia|Gecko+Gaia]]
** [[Gaia/System/Updates/Apps|Apps]]
* [[Gaia/System/BootScreen|Boot Screen]]
 
== Security Reviews ==
* [https://wiki.mozilla.org/Security/B2G/Reviews#Gaia_Reviews Gaia Security Reviews]
 
==Future==
For 1.3, 1.4 and 1.5, the UX team will focus on a project called Haida: https://wiki.mozilla.org/FirefoxOS/Haida .
 
Previous items:
* [[Gaia/Calculator|Calculator]]
* [[Gaia/System/DRM|DRM]]
* [[Gaia/eBookReader|eBook Reader]]
* [[Gaia/Design/FlexibleUI|Flexible UI]]
* [[Gaia/Maps|Maps]]
* [[Gaia/System/Microformats|Microformats]]
* [[Gaia/Notes|Notes]]
* [[Gaia/Weather|Weather]]
 
== Subpages of {{FULLPAGENAME}}==
{{Special:PrefixIndex/{{FULLPAGENAME}}/}}

Latest revision as of 16:42, 7 July 2015

Gaia is the collection of web apps which make up the front end of Firefox OS (codenamed Boot to Gecko).

Contributing

Admin

UX Specifications (Wireframes)

Here are some guidelines to finding and using the latest UX specifications, wireframes and mock-ups.

  • The UX team has set Box folders as "Open Access". This allows view access to anyone with a link: You do not need to create or sign into a Box account in order to see UX specs and wireframes. For the time being, we prefer to have these files be view only and, for design consistency, to have the UX team be the sole editors of these files.
  • The UX team also attaches spec files to individual bugs AND includes a link to Box elsewhere in the bug: in the Attachments section or in Comments. The URLs of the Box folder will also be included on spec documents to ensure that anyone who sees only a PDF also knows where to get the latest specs.
  • Please contact Stephany (swilkes@mozilla.com) if you have any issues with access to Box.

Shared Code / Styles

The Gaia apps share/reuse some JS libraries (localization, gesture detection, etc.), localization strings (relative dates), and styles (from the building blocks effort, see above):

Apps

For the latest UX specifications, please visit: https://mozilla.box.com/s/44utizl9oz4eupyu3fuu

System

For the latest UX specifications, please visit: https://mozilla.box.com/s/44utizl9oz4eupyu3fuu

Security Reviews

Future

For 1.3, 1.4 and 1.5, the UX team will focus on a project called Haida: https://wiki.mozilla.org/FirefoxOS/Haida .

Previous items:

Subpages of Gaia