SlideShare a Scribd company logo
Building Browser
Extensions
A New way to Start Addons development
Firefox Add-ons
● Add-ons are a powerful way for people to personalize
their web experience.
● Source of inspiration for Firefox features.
● Part of Firefox from the beginning
Firebug > DevTools
FoxMarks > Bookmark Sync
Firefox add-on platform
● Firefox add-ons are built on top of the internals of the
Firefox platform.
● XUL / XPCOM are the same tech Firefox is built on.
● Not a real API.
Problems with add-on platform
● Takes tooo long for reviewing.
● Very different compared to other browsers.
○ Chrome, Opera are running with Javascript, still now Firefox
Add-ons are running with XUL/XPCOM
WebExtensions
● Extensions are bits of code that modify the functionality
of a web browser.
● They are written using standard Web technologies -
JavaScript, HTML, and CSS - plus some dedicated
JavaScript APIs.
Why the move to WebExtensions
Openess: Write once for Firefox and run with other majore
browsers.
Easy: WebExtension can be written even with just manifest
file and script file describing how it works.
Future-proof:XPCOM/XUL add-ons are can break with
browser updates
Secure: XPCOM could introduce security and stability issues.
One to Rule All
Anatomy
● background pages: implement long-running logic
● content scripts: interact with web pages
● browser action files: implement toolbar buttons
● web accessible resources: make packaged content
accessible to web pages and content scripts (like
image,stylesheet,scripts)
manifest.json
● Manifest file is a mandatory file for every extension
● They say the meta data (like icon, description, scripts) of a
WebExtension
Basic manifest.json explained
{
"description": "25 character describing the addons”,
"manifest_version": 2, // Version of the Manifest (set by Mozilla)
"name": "New addon", // Name of the Addon
"version": "1.0", // Version of the addon, each update you should increment the number
"icons": {
"48": "icons/beasts-48.png",
"96": "icons/beasts-96.png"
},
"permissions": [
"activeTab" // API which we need permission
]
}
Reach me
Website : https://iamvp7.github.io/
Twitter : http://twitter.com/iamvp7
Thank you
Viswaprasath (iamvp7)

More Related Content

PPTX
Webplatform And Php
PPTX
Composer
PDF
What Could Microsoft Do To Make PHP Run Better On Windows
PDF
test
PDF
Make web as webapp
PPTX
Explore asp.net core 3.0 features
PDF
Leverage Entity Framework 7 in Business Application Design
PPTX
Whats new in .net core 3
Webplatform And Php
Composer
What Could Microsoft Do To Make PHP Run Better On Windows
test
Make web as webapp
Explore asp.net core 3.0 features
Leverage Entity Framework 7 in Business Application Design
Whats new in .net core 3

What's hot (20)

PPTX
WebMatrix
PPTX
Asp dotnet net core
PDF
CodeIgniter For Project : Workshop 001 - Install Docker and CodeIgniter
PPTX
phpbenelux - Microsoft & PHP (Web Platform Installer, Bridges and Azure)
PDF
Browser Performance Tests - Internet Explorer 11 vs Firefox 25 vs Google Chro...
PPSX
Flash Platform
PDF
Developing FirefoxOS
PDF
Building Flash-based websites using Adobe Flex - Lesson 10/10
PPT
Top 12 php frameworks 2016
PPTX
ASP.NET vNext
PDF
Firefox OS, the Open Web & WebAPIs - LXJS, Portugal
PPTX
Composer talk by Maxim Romanovsky
PDF
Dr. Strangelove, or how I learned to love plugin development
PPSX
09 asp.net session13
PDF
Read me
PPT
SynapseIndia gives an overview on comparison in PHP & ASP.NET in Terms of Cos...
PPTX
Performance Comparison of PHP 5.6 vs. 7.0 vs HHVM
PPTX
Magento 2 Theme Trainning for Beginners | Magenest
WebMatrix
Asp dotnet net core
CodeIgniter For Project : Workshop 001 - Install Docker and CodeIgniter
phpbenelux - Microsoft & PHP (Web Platform Installer, Bridges and Azure)
Browser Performance Tests - Internet Explorer 11 vs Firefox 25 vs Google Chro...
Flash Platform
Developing FirefoxOS
Building Flash-based websites using Adobe Flex - Lesson 10/10
Top 12 php frameworks 2016
ASP.NET vNext
Firefox OS, the Open Web & WebAPIs - LXJS, Portugal
Composer talk by Maxim Romanovsky
Dr. Strangelove, or how I learned to love plugin development
09 asp.net session13
Read me
SynapseIndia gives an overview on comparison in PHP & ASP.NET in Terms of Cos...
Performance Comparison of PHP 5.6 vs. 7.0 vs HHVM
Magento 2 Theme Trainning for Beginners | Magenest
Ad

Similar to Getting started with add ons (20)

PPTX
Web browser extensions development
PDF
Firefox OS - Hive Pilani 2015
PPTX
Google chrome extension
ODP
DanNotes XPages Mobile Controls
PPTX
[DanNotes] XPages - Beyound the Basics
ODP
My view on XPages
PPSX
A comprehensive software infrastructure of .Net
PPTX
Browsers
PPTX
Browsers
PPT
XPages -Beyond the Basics
ODP
FAT.Seminar.FOSS_Joomla!
PPT
Application Syndication Whitepaper
PPTX
Orange is the new blue: How to port Chrome Extension to Firefox Extension
PPT
Extension Library - Viagra for XPages
PDF
Download full ebook of Flex on Java Bernerd Allmon instant download pdf
PDF
Download full ebook of Flex on Java Bernerd Allmon instant download pdf
PPTX
Flex Introduction
PPTX
Internet browsers by Andres Haydar
ODP
Plug yourself in and your app will never be the same (2 hour edition)
ODP
Plug yourself in and your app will never be the same (2 hr editon)
Web browser extensions development
Firefox OS - Hive Pilani 2015
Google chrome extension
DanNotes XPages Mobile Controls
[DanNotes] XPages - Beyound the Basics
My view on XPages
A comprehensive software infrastructure of .Net
Browsers
Browsers
XPages -Beyond the Basics
FAT.Seminar.FOSS_Joomla!
Application Syndication Whitepaper
Orange is the new blue: How to port Chrome Extension to Firefox Extension
Extension Library - Viagra for XPages
Download full ebook of Flex on Java Bernerd Allmon instant download pdf
Download full ebook of Flex on Java Bernerd Allmon instant download pdf
Flex Introduction
Internet browsers by Andres Haydar
Plug yourself in and your app will never be the same (2 hour edition)
Plug yourself in and your app will never be the same (2 hr editon)
Ad

Recently uploaded (20)

PDF
Basic Mud Logging Guide for educational purpose
PPTX
Renaissance Architecture: A Journey from Faith to Humanism
PDF
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
PPTX
Lesson notes of climatology university.
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
Anesthesia in Laparoscopic Surgery in India
PPTX
Pharma ospi slides which help in ospi learning
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
FourierSeries-QuestionsWithAnswers(Part-A).pdf
PDF
RMMM.pdf make it easy to upload and study
PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PPTX
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PPTX
PPH.pptx obstetrics and gynecology in nursing
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PPTX
master seminar digital applications in india
PDF
TR - Agricultural Crops Production NC III.pdf
PPTX
Cell Structure & Organelles in detailed.
PPTX
Cell Types and Its function , kingdom of life
Basic Mud Logging Guide for educational purpose
Renaissance Architecture: A Journey from Faith to Humanism
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
Lesson notes of climatology university.
O5-L3 Freight Transport Ops (International) V1.pdf
Anesthesia in Laparoscopic Surgery in India
Pharma ospi slides which help in ospi learning
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
FourierSeries-QuestionsWithAnswers(Part-A).pdf
RMMM.pdf make it easy to upload and study
2.FourierTransform-ShortQuestionswithAnswers.pdf
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PPH.pptx obstetrics and gynecology in nursing
Abdominal Access Techniques with Prof. Dr. R K Mishra
master seminar digital applications in india
TR - Agricultural Crops Production NC III.pdf
Cell Structure & Organelles in detailed.
Cell Types and Its function , kingdom of life

Getting started with add ons

  • 1. Building Browser Extensions A New way to Start Addons development
  • 2. Firefox Add-ons ● Add-ons are a powerful way for people to personalize their web experience. ● Source of inspiration for Firefox features. ● Part of Firefox from the beginning Firebug > DevTools FoxMarks > Bookmark Sync
  • 3. Firefox add-on platform ● Firefox add-ons are built on top of the internals of the Firefox platform. ● XUL / XPCOM are the same tech Firefox is built on. ● Not a real API.
  • 4. Problems with add-on platform ● Takes tooo long for reviewing. ● Very different compared to other browsers. ○ Chrome, Opera are running with Javascript, still now Firefox Add-ons are running with XUL/XPCOM
  • 5. WebExtensions ● Extensions are bits of code that modify the functionality of a web browser. ● They are written using standard Web technologies - JavaScript, HTML, and CSS - plus some dedicated JavaScript APIs.
  • 6. Why the move to WebExtensions Openess: Write once for Firefox and run with other majore browsers. Easy: WebExtension can be written even with just manifest file and script file describing how it works. Future-proof:XPCOM/XUL add-ons are can break with browser updates Secure: XPCOM could introduce security and stability issues.
  • 8. Anatomy ● background pages: implement long-running logic ● content scripts: interact with web pages ● browser action files: implement toolbar buttons ● web accessible resources: make packaged content accessible to web pages and content scripts (like image,stylesheet,scripts)
  • 9. manifest.json ● Manifest file is a mandatory file for every extension ● They say the meta data (like icon, description, scripts) of a WebExtension
  • 10. Basic manifest.json explained { "description": "25 character describing the addons”, "manifest_version": 2, // Version of the Manifest (set by Mozilla) "name": "New addon", // Name of the Addon "version": "1.0", // Version of the addon, each update you should increment the number "icons": { "48": "icons/beasts-48.png", "96": "icons/beasts-96.png" }, "permissions": [ "activeTab" // API which we need permission ] }
  • 11. Reach me Website : https://iamvp7.github.io/ Twitter : http://twitter.com/iamvp7