• Skip to main content
  • Select language
  • Skip to search
MDN Web Docs
  • Technologies
    • HTML
    • CSS
    • JavaScript
    • Graphics
    • HTTP
    • APIs / DOM
    • WebExtensions
    • MathML
  • References & Guides
    • Learn web development
    • Tutorials
    • References
    • Developer Guides
    • Accessibility
    • Game development
    • ...more docs
B2G OS
  1. MDN
  2. Archive of obsolete content
  3. B2G OS
  4. The B2G OS platform
  5. Gaia
  6. Gaia apps

Gaia apps

In This Article
  1. Gaia functionality categories
    1. Platform
      1. Platform apps: further explanation
    2. Communication
      1. Communication apps: further explanation
    3. Productivity
      1. Productivity apps: further explanation
    4. Media
      1. Media apps: further explanation
    5. Other Gaia features

Gaia is the front-end of Firefox OS, which contains system administration functionality and the built-in suite of apps shipped with Firefox OS devices. All the Gaia source code — even the system, and keyboard IMEs — is fully implemented with HTML5 (HTML + CSS + JavaScript) & Open WebAPIs. This set of documents contains information on how each of the default apps available in the Gaia family works.

Gaia functionality categories

The different apps inside Gaia can be roughly categorized into the groups listed below.

Note: Many of the pages linked to for more explanation of how the individual apps work are README pages inside the Gaia Github repo. This is because many of the apps are on rapid development cycles and therefore subject to rapid (often daily) change, so it would make little sense to try to keep MDN pages updated with these changes. The engineer-maintained README pages are currently the most accurate source of information.

Platform

Including the System, Settings, Lockscreen, build scripts, and Bluetooth apps.

Platform apps: further explanation

System
The System app is the first web app loaded by Gecko during the Firefox OS bootup procedure, and it handles numerous responsibilities that are required generally for the running of the system, and are therefore not scoped per individual web app.
Browser
The Browser app (which is now part of System) provides browser-like functionality where it is needed — including page navigation, search and bookmarks.
Window Management
Firefox OS's window management functionality — including app life cycle and interaction, notifications, animations and much more — is handled by a specific part of the System app. This article looks at Firefox OS Window Management in detail.
Settings
The Settings app allows Firefox OS users to configure device settings, and responds to incoming activities (Web activities with a name of configure), which allows other apps to jump to different panels inside the Settings app to handle configuration as required (for example showing the wifi settings panel if no data connection is available.)

Communication

Including the Dialer, Contact, SMS apps and FTU apps.

Communication apps: further explanation

TBD

Productivity

Including the Email, Calendar, and Clock apps.

Productivity apps: further explanation

Calendar
The Firefox OS built-in calendar app.
Clock
Firefox OS's default Clock app, which includes alarm, timer and stopwatch functionality.
Email
The Gaia e-mail app.

Media

Including the Camera, Gallery, Music, and Video apps, and some media related functions such as forward lock DRM and wallpapers.

Media apps: further explanation

Video
Video is a simple video player app that will play videos present on your Firefox OS device's storage media.
Camera
Camera allows Firefox OS users to capture and manage videos and photos from the device camera(s), and responding the Web activities of type pick from other apps that want to grab media using Camera's functionality.

Other Gaia features

Besides these functions, there are several other major features such as browser, homescreen, marketplace, test framework, PDF viewer, and app manager, which are developed closely alongside Gaia.

pdf.js
pdf.js is an HTML5-based PDF viewer, used inside Gaia for viewing PDFs. Note that the codebase for pdf.js is maintained in a separate repo, outside Gaia.

Document Tags and Contributors

Tags: 
  • Apps
  • Architecture
  • Firefox OS
  • Gaia
 Contributors to this page: chrisdavidmills
 Last updated by: chrisdavidmills, Feb 27, 2017, 2:56:04 AM
See also
  1. Build and install
    1. Build and install overview
    2. B2G OS build process summary
    3. Build prerequisites
    4. Preparing for your first build
    5. Building B2G OS
    6. B2G installer add-on
    7. Building B2G OS for Flame on Mac OS X
    8. Choosing how to run Gaia or B2G OS
    9. Compatible Devices
    10. Installing B2G OS on a mobile device
    11. Creating and applying B2G OS update packages
    12. Building and installing FOTA community builds
    13. B2G build variables reference sheet
  2. Porting B2G OS
    1. Porting overview
    2. Porting basics
    3. Porting on CyanogenMod
  3. Developing Gaia
    1. Developing Gaia overview
    2. Running the Gaia codebase
    3. Run Gaia on desktop using Mulet
    4. Understanding the Gaia codebase
    5. Making Gaia code changes
    6. Testing Gaia code changes
    7. Submitting a Gaia patch
    8. Gaia build system primer
    9. Different ways to run Gaia
    10. Make options reference
    11. Gaia tools reference
  4. B2G OS APIs