Gaia/Email: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
Line 2: Line 2:


==== Interaction ====
==== Interaction ====
* [https://www.dropbox.com/sh/8u8nmhvgzkltc7l/A1069183YG/Apps/Email Email Interaction diagrams on Dropbox]
For the latest UX specifications, please visit:  
* [https://www.dropbox.com/sh/8u8nmhvgzkltc7l/PvL-q420Ei dropbox root for all apps/etc]
https://mozilla.box.com/applications
 


==== Visual ====
==== Visual ====
* [https://wiki.mozilla.org/Gaia/Design/BuildingBlocks new building blocks page]
* [https://wiki.mozilla.org/Gaia/Design/BuildingBlocks new building blocks page]
* [https://www.dropbox.com/sh/2tmvc7qyxmxba07/otjHdKf0kM mockups on dropbox]
* [https://www.dropbox.com/sh/ekzrrz7um4uj6y0/NVzqB1D4hx/03%20Transitions transitions on dropbox] (big PDF of overall transition descriptions)
* [http://mozilla-b2g.github.com/Gaia-UI-Building-Blocks/ old building blocks page, fairly broken]
* [http://mozilla-b2g.github.com/Gaia-UI-Building-Blocks/ old building blocks page, fairly broken]
* Things you can look at but are not canonical; these are inputs to the building blocks / UX process:
* Things you can look at but are not canonical; these are inputs to the building blocks / UX process:
** [http://buildingfirefoxos.com/index.html some building block proposals you can look at]
** [http://buildingfirefoxos.com/index.html some building block proposals you can look at]
** [http://buildingfirefoxos.com/transitions.html#deeper visual demonstration of some proposed transitions]
** [http://buildingfirefoxos.com/transitions.html#deeper visual demonstration of some proposed transitions]


== Development ==
== Development ==

Revision as of 18:41, 30 May 2013

Design Specs

Interaction

For the latest UX specifications, please visit: https://mozilla.box.com/applications


Visual

Development

The e-mail app consists of a back-end which is developed in https://github.com/mozilla-b2g/gaia-email-libs-and-more and a front-end which is developed as part of Gaia at https://github.com/mozilla-b2g/gaia/tree/master/apps/email. The intent of separating the library from the UI is to make the back-end reusable. The primary motivation is to allow a keyboard-friendly desktop UI to be developed against the library without trying to have a single UI trying to meet two radically different use cases.

To re-cap, check out these projects / repositories:

Features

See Gaia/Email/Features for a partial list of things we currently support or don't support.

Implementation

The following pages are an attempt to describe how the e-mail implementation works without requiring you to read the block comments in the source code in order to understand. The goal is to provide context of the e-mail problem domain and our approach to dealing with it. We are not going to go into low-level details because those can change frequently, but we will try to strike a balance by linking to the source code and its block comments.

Standardization Efforts

Testing

  • Front-End Tests
    • live in the gaia repo
    • Tests by default run against
  • Back-End Tests
    • live in the gaia-email-libs-and-more repo (aka GELAM)
    • run against JS implemented fake-servers by default, but can be run against real servers as well.
    • contain a mixture of test types:
      • unit tests. examples: test_intl_unit.js (simple), test_folder_storage.js (complex)
      • higher level tests. ex: test_imap_general.js
      • end-to-end-ish tests. ex: test_compose.js (creates a message with an attachment, sends mail to itself, checks the messages and the attachment, sends a reply, etc.)


Dependencies

(or rather, dependencies with wiki pages that tell you stuff)

https://wiki.mozilla.org/Gaia/Email/ActiveSync

Historical