Labs/Jetpack/JEP/30

From MozillaWiki
< Labs‎ | Jetpack‎ | JEP
Revision as of 20:58, 17 November 2009 by Aza (talk | contribs) (Created page with '{{draft}} == JEP 30 - First-run Support == * Champion: Aza Raskin <aza at mozilla dot com> * Editors: Paul O’Shannessy <paul at oshannessy dot com> * Status: Implementing * T…')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Draft-template-image.png THIS PAGE IS A WORKING DRAFT Pencil-emoji U270F-gray.png
The page may be difficult to navigate, and some information on its subject might be incomplete and/or evolving rapidly.
If you have any questions or ideas, please add them as a new topic on the discussion page.

JEP 30 - First-run Support

  • Champion: Aza Raskin <aza at mozilla dot com>
  • Editors: Paul O’Shannessy <paul at oshannessy dot com>
  • Status: Implementing
  • Type: API Track
  • Created: 17 Nov 2009
  • Reference Implementation: None
  • Relevant Bugs:
  • JEP Index

Introduction and Rationale

This JEP describes an API for creating first-run pages for Jetpacks.

After installing a Jetpack, without some sort of instructions on how to use the features just installed, the user can feel lost, bewildered, and confused. The first-time experience is exactly when users need the greatest reassurance and instruction, which is why so many Firefox add-ons create a first-run page to explain and guide the user through the new functionality. With Jetpacks, we have the opportunity to create a more unified feel.

Proposal

Clipboard access will live at jetpack.firstRun?

20091117-c8maetc49ke7ptf6yj2bieg7ac.png

jetpacks.firstRun({ html: xxx, url: xxx, text: xxx, image: xxx });

jetpacks.contract = {

 firstRun: "blah"

} jetpacks.manifest = {

 firstRun: "http://wwww...."

}

  • Want to take care of the case where it's just some text. Just a single image. A full HTML page.
  • Want to take care of settings. Both as a link which pops open the goodness (jetpack.settings.open) and as something which is embedded (
    ) and as something which is in-flowed <input class="jetpack-setting" id="twitter.id"/>.

Multiple Jetpacks

One of the pain points in original-flavor extensions has been that bundling two or more extensions together leads to a jarring experience on installation—numerous first-run pages pop-up like zits on a teenagers face after an oil bath.

With the Jetpack method of doing first-run pages, we can more easily intercept these first-run pages in the case of a bundle and create a unified experience.

20091117-msbxk1bw2ue7w1i1km5s4c9h4u.png