Writing Browser Extensions for fun and profit
-
Upload
oleg-podsechin -
Category
Technology
-
view
583 -
download
0
description
Transcript of Writing Browser Extensions for fun and profit
Browser Extensionsfor fun and/or profit
writing
Browser extensions - why bother?
● Fact: users have short attention spans
● Extensions can be contextual● Extensions can be unobtrusive● Extra functionality
○ Add buttons to and extend browser chrome
○ Run tasks in the background
○ Modify pages you visit
○ Access browser history, storage
Anatomy of an Extension
● Background page○ Can modify browser chrome
● Content scripts
● Extension page (in Chrome, optional)
● Use message passing to talk to each other
Extension APIs
● Chrome○ Up to date, comprehensive, with examples
● Firefox○ Multiple versions: native, Jetstrap, C++ - defaults to
Mongolian, obvious things hard to do
● Opera○ Docs non-existent, Opera.Next
● IE - BHO, COM, ATL
Dev Tools
● Chrome○ DevTools, filesystem, local deployment
● Firefox○ builder.addons.mozilla.org, cfx
● Opera○ Drag config.xml into browser
Deployment
● Chrome○ CRX, upload ZIP to Chrome Web Store
● Firefox○ cfx, upload XPI to addons.mozilla.org
● Opera○ upload ZIP to addons.opera.com
Review Process & Updates
● Chrome○ No review process
○ Updates available to all users within a day automatically
● Firefox○ Human reviews, takes ~10 days
○ Updates have to be done manually by users
● Opera○ Human reviews, takes two weeks or more
○ Update mechanism unclear
Distribution
● Chrome○ Dashboard shows stats + number of current installs,
GA, ratings/reviews/keywords drive traffic
● Firefox○ Dashboard shows stats + number of current installs,
little traffic, locale defaults to Mongolian
● Opera○ No stats, can’t search by name, indexed by Google
Examples
● Meetin.gs○ content script injects Meet Me buttons
○ watches for DOM mutations
○ pulls data out of page with CSS selectors
● StartHQ○ replaces new tab page
○ populates launcher based on browsing history
○ ...
Thank you!starthq.com