{"id":13424912,"url":"https://github.com/mdn/webextensions-examples","last_synced_at":"2025-05-13T00:11:16.762Z","repository":{"id":36428542,"uuid":"40733543","full_name":"mdn/webextensions-examples","owner":"mdn","description":"Example Firefox add-ons created using the WebExtensions API","archived":false,"fork":false,"pushed_at":"2025-05-05T02:09:35.000Z","size":5199,"stargazers_count":4254,"open_issues_count":20,"forks_count":2652,"subscribers_count":163,"default_branch":"main","last_synced_at":"2025-05-05T03:23:36.963Z","etag":null,"topics":["browser","mdn","webextensions","webextensions-apis"],"latest_commit_sha":null,"homepage":"https://developer.mozilla.org/en-US/Add-ons/WebExtensions","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mdn.png","metadata":{"files":{"readme":"README.md","changelog":"history-deleter/README.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-08-14T19:55:54.000Z","updated_at":"2025-05-05T02:58:29.000Z","dependencies_parsed_at":"2023-10-02T01:33:40.554Z","dependency_job_id":"c693969d-cc04-4bb1-a65b-95fae66791e4","html_url":"https://github.com/mdn/webextensions-examples","commit_stats":{"total_commits":433,"total_committers":90,"mean_commits":4.811111111111111,"dds":0.6027713625866051,"last_synced_commit":"18238c1beeb28c12390a31e24a0893e4d5d8bf3f"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdn%2Fwebextensions-examples","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdn%2Fwebextensions-examples/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdn%2Fwebextensions-examples/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdn%2Fwebextensions-examples/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mdn","download_url":"https://codeload.github.com/mdn/webextensions-examples/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253843217,"owners_count":21972874,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["browser","mdn","webextensions","webextensions-apis"],"created_at":"2024-07-31T00:01:00.771Z","updated_at":"2025-05-13T00:11:16.739Z","avatar_url":"https://github.com/mdn.png","language":"JavaScript","funding_links":[],"categories":["JavaScript","browser","Tools","Examples","Sample Extensions"],"sub_categories":["Examples","Publishing"],"readme":"# webextensions-examples [![Build Status](https://travis-ci.org/mdn/webextensions-examples.svg?branch=master)](https://travis-ci.org/mdn/webextensions-examples)\n\n[https://github.com/mdn/webextensions-examples](https://github.com/mdn/webextensions-examples)\n\nMaintained by Mozilla's [Add-ons team](https://wiki.mozilla.org/Add-ons).\n\nWebExtensions are a way to write browser extensions: that is, programs\ninstalled inside a web browser that modify the behavior of the browser or\nweb pages loaded by the browser. WebExtensions are built on a set of\ncross-browser APIs, so WebExtensions written for Google Chrome, Opera, or \nEdge will, in most cases, run in Firefox too.\n\nThe \"webextensions-examples\" repository is a collection of simple, \ncomplete, and installable WebExtensions. The examples show how to use the\nWebExtensions APIs, and you can use them as a starting point for your \nWebExtensions.\n\nFor an index of all the examples, see the [\"Example extensions\" page on MDN](https://developer.mozilla.org/Add-ons/WebExtensions/Examples).\n\nThe examples are made available under the\n[Mozilla Public License 2.0](https://www.mozilla.org/en-US/MPL/2.0/).\n\n## How to use \"webextensions-examples\"\n\nTo use the repository, first clone it.\n\nEach example is in a top-level folder and includes a short README explaining\nwhat it does. To see how an example works, install it in Firefox by following \nthe [installation instructions](#installing-an-example). \n\nTo find your way around a WebExtension's internal structure, have a look at the\n[Anatomy of a WebExtension](https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Anatomy_of_a_WebExtension)\npage on MDN.\n\nTo use these examples in Firefox, use the most recent release of Firefox.\nHowever, most examples work with earlier releases.\n\nA few examples rely on APIs that are only available in pre-release versions \nof Firefox. Where this is the case, the example declares the minimum version\nthat it needs in the `strict_min_version` attribute of the\n[`browser_specific_settings key`](https://developer.mozilla.org/en-US/Add-ons/WebExtensions/manifest.json/browser_specific_settings)\nin the extension's manifest.json file.\n\n## Installing an example\n\nSome examples work only on specific domains or pages. Details of any \nrestrictions are provided in each example's README file. None of the \nexamples work in private browsing windows by default, see \n[Extensions in Private Browsing](https://support.mozilla.org/en-US/kb/extensions-private-browsing#w_enabling-or-disabling-extensions-in-private-windows) \nfor details.\n\nTo run an example extension:\n\n1. Open Firefox and load the `about:debugging` page. Click \n   [Load Temporary Add-on](https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Temporary_Installation_in_Firefox)\n   and select the `manifest.json` file within the folder of an example extension.\n2. Install the\n   [web-ext](https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Getting_started_with_web-ext)\n   tool. At the command line, open the example extension's folder and type\n   `web-ext run`. This launches Firefox and installs the extension automatically.\n   This tool provides some additional development features, such as\n   [automatic reloading](https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Getting_started_with_web-ext#Automatic_extension_reloading).\n\n## Support for other browsers\n\nThese examples are tested in Firefox. They may work in other browsers, if the\n[browser supports the APIs used](https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Browser_support_for_JavaScript_APIs).\nNote that these examples all use the `browser` namespace and promises to \nwork with asynchronous functions. This means the examples won't work in \nChrome unless you use the \n[polyfill provided by Mozilla](https://github.com/mozilla/webextension-polyfill).\nSee [the overview of WebExtension APIs](https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API) \nfor more information.\n\n## Learn more\n\nTo learn more about developing WebExtensions, see the\n[WebExtensions documentation on MDN](https://developer.mozilla.org/en-US/Add-ons/WebExtensions)\nfor getting started guides, tutorials, and full API reference docs.\n\n## Problems?\n\nIf you encounter an issue:\n- post a query on the [add-ons discourse forum](https://discourse.mozilla.org/c/add-ons)\n- email the [dev-addons mailing list](https://mail.mozilla.org/listinfo/dev-addons)\n- contact the add-ons team in the [Add-ons room](https://chat.mozilla.org/#/room/#addons:mozilla.org) on [Matrix](https://wiki.mozilla.org/Matrix)\n\nIf you cannot resolve the issue, [file a bug](https://github.com/mdn/webextensions-examples/issues/new).\n\n## Contributing\n\nWe welcome contributions, whether they are new examples, new features, bug \nfixes, or translations of localizable strings. Please see the \n[CONTRIBUTING.md](https://github.com/mdn/webextensions-examples/blob/master/CONTRIBUTING.md)\nfile for more details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmdn%2Fwebextensions-examples","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmdn%2Fwebextensions-examples","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmdn%2Fwebextensions-examples/lists"}