1 of 47

Add-ons and WebExtensions

What We’ve Done & Where We’re Going

2 of 47

  • Kev - Overview
  • Amy - Community
  • Jorge - AMO
  • Andy - WebExtensions
  • Questions

Agenda

3 of 47

First Things First

4 of 47

5 of 47

Add-ons: Shaping Firefox

Bookmark Syncing

Foxmarks

309,768 users (became xmarks)

Tab Pinning

Faviconize Tab

14,092 users

Session Restore

Session Manager

279,186 users

Developer Tools

Firebug

2,288,301 users

Tabbed Browsing

Multizilla

Test Pilot

Feature Experiments

150,000 users

6 of 47

  • Mitigation has been story so far
  • Legacy extensions will continue to break
  • Shift focus to end-game and rationale
  • Build out platform to enable transition
  • Outline and accept loss potential

Changing the Narrative

7 of 47

  • Easier to learn and write
  • Decoupled from the platform
  • Stable, secure and sandboxed by design
  • Cross platform: Opera, Chrome & Edge
  • Opportunity to innovate and influence

Why WebExtensions?

8 of 47

There’s No Hatch

9 of 47

  • Add-ons won’t hold Firefox back
  • Improved User Experience
  • More people developing add-ons
  • Sandboxing and clear usage
  • Manifests and permissions

Benefits for Firefox

10 of 47

2016

11 of 47

We built up the WebExtensions API, and saw people start to use it.

12 of 47

13 of 47

We put everything in place to turn e10s on for everyone.

14 of 47

We reduced the friction of getting an extension into the hands of an end-user.

15 of 47

16 of 47

2017

17 of 47

We’ll make it easier for people to find add-ons that are useful.

18 of 47

We’ll grow the add-on community through promotion and recruitment of add-ons and their developers.

19 of 47

By the end of 2017, WebExtensions will be the only supported extension type in Firefox.

20 of 47

Timeline

2017

March August November

52 (ESR)

53

54

55

Merge for 57.

56

57

Webextensions and system add-ons only for Firefox Desktop.

Remove shims for e10s.

51

e10s w/ shims

No new non-Webextension Extensions will be accepted for signing for Firefox Desktop.

Existing add-ons can still be updated.

21 of 47

Add-on Community

22 of 47

Since London:

  • Collaboration with community on API prioritization
  • Targeted outreach to top developers
  • New documentation, examples, VDH case study
  • WebExtensions Experiments
  • MDN, comms wiki, lookup tool updated to recommend WebExtensions as only path

WebExtensions Transition

Public

23 of 47

Since London:

  • 900 new listed WebExtensions (1,300 total)
  • 200+ of them were converted from legacy add-ons
  • 3M+ total ADI of WebExtensions - out of 126M/12%
  • WebExtensions have become the most common type of extension submitted to AMO (65% of new add-on submissions in November)

WebExtensions Transition

Public

24 of 47

Developers & Users consume and enrich our products

  • Developers and theme designers create content and use AMO to distribute them
  • Users consume them on AMO and other places

Volunteers keep the ecosystem operating and drive the project forward

  • Coders: fix bugs and contribute code to AMO, WebExtensions, etc
  • Reviewers: extensions and themes
  • Curators: featured add-ons
  • Translators: L10N, BabelZilla
  • Technical writers: MDN
  • Support: SUMO and forums
  • Evangelists: speaking engagements, social media, blogs
  • Regional community organizers: Reps, Campus Clubs

The Add-on Community

Public

25 of 47

  • Add-on reviewers
    • Volunteers perform thousands of reviews every month
    • Volunteers perform 100% of theme reviews and 74% of other add-on reviews
    • Past 10 weeks: 80% reviewed under 5 days, 6% between 5 and 10 days, 13% over 10 days

Volunteer Community - Reviewers

Public

26 of 47

  • Code contributors
    • Volunteers contributed 120+ patches since London (243% increase from first half of the year)
    • Bugzilla and GH bots
    • Bi-weekly GFB triage
    • Guest speakers Kumar and Luca on mentorship and new contributors

Volunteer Community - Coders

Public

27 of 47

  • Developer community: more developers writing add-ons
    • WebExtensions outreach to Chrome developers
  • User community: more people using add-ons
    • Marketing campaign for special-edition Firefox
  • Volunteer community: more participation in our project
    • Collaborate with Open Innovation group
    • Reviewer program improvements

H1 2017

Public

28 of 47

Thurs, Dec 8 @ 10:00 am

At the Waterfall next to where they serve breakfast and lunch

29 of 47

AMO Product

30 of 47

  • Streamline add-on discovery and installation
  • Reduce complexity
  • Move to new frontend

AMO Goals

31 of 47

  • [Done] Firefox Accounts migration completed
  • [Done] Remove preliminary review
  • [Done] Discovery Pane launched
    • Monthly content updates

AMO Progress

32 of 47

  • [Soon] Reviewer developer comms
  • [Soon] New mobile frontend
  • [Soon] Listed / unlisted versions
  • [Soon] Developer hub landing page

AMO Progress

33 of 47

Coming soon...

34 of 47

Coming soon...

35 of 47

Coming soon...

36 of 47

  • Support for new themes
  • New desktop frontend
    • Navigation and search
    • Listing pages
  • Add-on ratings
  • Tags and categories
  • Move to WebExtensions

AMO H1 2017

37 of 47

WebExtensions Status

38 of 47

Chrome APIs landed:

  • nativeMessaging
  • topSites
  • identity
  • idle
  • omnibox
  • sessions
  • storage.sync

WebExtensions (last 6 months)

39 of 47

Chrome extensions easily convertable.

Chrome parity (last 6 months)

76%

Embedded Extensions allow you to transition from legacy to WebExtensions.

40 of 47

Chrome parity (next 6 months)

What’s left?

  • devtools
  • browsingData
  • permissions
  • privacy
  • proxy
  • “capture”
  • chrome_url_overrides

...and repeating all this for Android.

41 of 47

  • Allows extensions to run in their own process 🎉🍻🙌.
  • Currently tests on try server run in parallel with out of process on and off.
  • Aiming for roll out 2017.
  • Started by Rob Wu with thanks to Bill, Kris and others.

Out of process (next 6 months)

42 of 47

Shipping Chrome Light?

43 of 47

  • Sidebars and other persistent UI.
  • Improving request handling.
  • File system access.
  • New theme support.

New APIs (next 6 months)

44 of 47

  • WebExtensions is a sandbox by design.
  • But it’s an open sandbox, created and shaped by the contributors.
  • So file a bug...

Help wanted (next 6 months)

45 of 47

  • Experiments allow you to develop, test and play around with APIs.
    • Bob and Andrew
    • Thursday December 8, 2016 4:15pm - 5:15pm
    • Waikoloa Suite 1 see sched
  • Hoping to use this as a funnel for contributors.
  • ...possibility of running experiments on release?

Experiments (next 6 months)

46 of 47

  • Want to build a WebExtension?
  • Want to build an API for WebExtensions?
  • Come join us
    • Thursday
    • All day
    • Firefox home room
    • On sched

WebExtensions Hackathon

47 of 47

Done. Questions?