Gaia: Difference between revisions

m (add Subpages section, seems useful)
(Added link to meeting details)
 
(217 intermediate revisions by 23 users not shown)
Line 1: Line 1:
== About ==
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]).
Gaia is a collection of [https://apps.mozillalabs.com/ web apps] which make up the UI for the [[B2G|Boot to Gecko]] project.


== Apps ==
==Contributing==
* Home screen (webGL cjones/ HTML vingtetun)
* See [[Gaia/Hacking]] to get started hacking
** Keyboard/IME (vingtetun/timdream)
* See [[Gaia/UxContributing]] to get started contributing to UX
*** Chinese ZhuYing IME (timdream)
* See [[B2G#Meetings]] for meeting details
* Lock screen (gal)
* Dialer (vingtetun)
* SMS application (vingtetun)
* [[Gaia/Browser|Browser]] (benfrancis)
* [[Gaia/Gallery|Gallery]] (benfrancis)
* [[Gaia/Camera|Camera]] (benfrancis)
* 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
* App Manager (justindarc)
* Settings (justindarc)
* UI/widget library (justindarc)
* Apps store (justindarc)
* eBook reader


== Contributing ==
== Admin ==
=== Filing Bugs ===
* [[Gaia/UXTeam|UX Team]]
Issues are filed on [https://github.com/andreasgal/gaia/issues Github].
* [[Gaia/Meeting_Notes|Meeting Notes]]


=== Hacking ===
== UX Specifications (Wireframes) ==
You can fork us on [https://github.com/andreasgal/gaia Github], then send a pull request.
Here are some guidelines to finding and using the latest UX specifications, wireframes and mock-ups.


A lot of the apps should be able to run in a web browser (particularly Firefox Nightly), but sometimes you may need to run them on B2G until new APIs land in browsers. See [[Gaia/Hacking]] to get started.
* 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.


=== Communicating ===
* 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:
You can find us in #gaia on irc.mozilla.org and we use the [https://lists.mozilla.org/listinfo/dev-b2g B2G mailing list].
** 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


=== Coding Style ===
* 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.
* Background:
** [[MDC:Developer Guide/Coding Style#General practices]]
** [[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.
* 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.


* add a <code>"use strict";</code> statement (exactly that!) to the top of your JS files
* Please '''contact Stephany''' (swilkes@mozilla.com) '''if you have any issues with access to Box'''.


* 2 spaces for indentation - do not use tab.
== Shared Code / Styles ==


* Line break are free (I promise) don't hesitate to use them to separate logical block inside your functions.
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):
* [[Gaia/Shared|Shared]]


* Files are named <code>like_this.js</code>.
== Apps ==
For the latest UX specifications, please visit: https://mozilla.box.com/s/44utizl9oz4eupyu3fuu
* [[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]]


* Use single quote instead of double quotes.
* [[Gaia/AppPermissions|App Permissions]]


* Additional rules:
== System ==
Bad:
For the latest UX specifications, please visit: https://mozilla.box.com/s/44utizl9oz4eupyu3fuu
if (expression) doSomething();
* [[Gaia/System/Activities|Activities]]
* [[Gaia/System/Apps|Apps]] (install, permissions, errors, management, updates, uninstall, reinstall)
* [[Gaia/System/Bluetooth|Bluetooth]]
* [[Gaia/System/InternetSharing|Internet Sharing & Tethering]]
* [[Gaia/System/ConsumptionControl|Consumption Control]]
* [[Gaia/System/DoNotTrack|Do Not Track]]
* [[Gaia/System/FileManagement|File Management]]
* [[Gaia/Design/FirstRun|First Run Experience]]
* [[Gaia/System/Hardware|Hardware]]
* [[Gaia/System/Keyboard|Keyboard]] (text-entry ui, predictive and corrective text capabilities)
* Value selectors and Pickers
* [[Gaia/System/CursorManagement|Text-handling]] (cursor management and text selection)
* [[Gaia/System/Localization|Localization & Internationalization]]
* [[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]]


Correct:
== Security Reviews ==
if (expression)
* [https://wiki.mozilla.org/Security/B2G/Reviews#Gaia_Reviews Gaia Security Reviews]
  doSomething();


=== Before submitting a patch ===
==Future==
On each javascript files you are adding or you have modified, run:
For 1.3, 1.4 and 1.5, the UX team will focus on a project called Haida: https://wiki.mozilla.org/FirefoxOS/Haida .
gjslint --nojsdoc my_file.js


http://code.google.com/closure/utilities/docs/linter_howto.html
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}}==
== Subpages of {{FULLPAGENAME}}==
{{Special:PrefixIndex/{{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