このページの内容

Awesome WebExtensions

WebExtensionsを扱う資料や関連プロジェクトをまとめたAwesomeリストです。

目次

始める

コミュニティ

ライブラリーとフレームワーク

拡張機能の一部となるためのコード。

  • webext-options-sync - 拡張機能のオプション管理と自動保存を支援します。
  • webext-storage-cache - 有効期限付きの Map 風 promise キャッシュストレージ。
  • webext-dynamic-content-scripts - カスタムドメインで content_scripts を自動注入します。
  • mozilla/webextension-polyfill - browser 名前空間の標準化された promise ベース API をサポートする polyfill。
  • @types/firefox-webext-browser - browser 名前空間向け TypeScript 型を提供します。
  • redux-webext - WebExtension の状態管理に Redux を使用します。
  • ExtPay - サーバーバックエンドを実行することなく、拡張機能で安全な支払いを受け取ります。
  • inject-react-anywhere - 便利な API とスタイル分離により、サードパーティーサイトへ React コンポーネントを注入します。
  • More…

ツール

拡張機能管理を支援するアプリ。

  • Chrome Webstore Upload - cli 経由(または GitHub Actions 上で自動)で Chrome Web Store へ拡張機能をアップロードします。
  • mozilla/web-ext - WebExtensions のビルド、実行、テストを支援するコマンドラインツール。
  • chromepet - 新しいバージョンの公開時に通知を受け取ります。
  • chrome-ext-downloader - Chrome Web Store の任意の拡張機能をダウンロードし、その実装を確認します。
  • chrome-store-api - Chrome Web Store API ラッパー。
  • Chrome extension source viewer - ストア上で拡張機能のソースコードを直接表示する WebExtension。
  • @wext/shipit - Chrome Web Store、Mozilla Addons、Opera Addons への自動公開ツール。
  • wext-manifest-loader - 特定ブラウザーにのみ表示する manifest.json プロパティを指定できる Webpack loader。
  • webextension-manifest-loader - ブラウザーに合わせた manifest.json を読み込む Webpack loader。インポート可能なすべてのプロパティもインポートし、唯一の webpack エントリーポイントとして ‘manifest.json’ を使えます。
  • webpack-extension-reloader - 開発中にブラウザー拡張機能を自動リロードする Webpack プラグイン。
  • webpack-target-webextension - Webpack による WebExtensions ビルドにコード分割サポートを追加します。
  • Extension.js - プラグアンドプレイ、ゼロ設定、クロスブラウザーの拡張機能開発ツール。

テスト

  • sinon-chrome - テスト用に Chrome Extensions API をモックします。
  • addons-linter - Mozilla のガイドラインに対して拡張機能を検証します。
  • webextensions-jsdom - manifest.json に基づき JSDOM で popup、sidebar、background を読み込みます。
  • webextensions-api-fake - インメモリーの WebExtensions API Fake 実装(TypeScript 型を含む)。
  • webextensions-api-mock - sinon stub としての WebExtensions API(TypeScript 型を含む)。
  • webextensions-schema - WebExtensions Schema JSON ファイルをプログラムから利用します。

ボイラープレート

  • browser-extension-template - parcel、オプションハンドラー、自動公開を備えた必要最小限のボイラープレート。
  • create-webextension - Yarn WebExtension ジェネレーター。
  • generator-web-extension - クロスブラウザーのウェブ拡張機能開発を始めるために必要なすべてを作成する WebExtension ジェネレーター。
  • WXT - ウェブ拡張機能を開発する次世代フレームワーク。

サンプル拡張機能

これらはシンプルでモダンな WebExtensions リポジトリであり、GitHub Actions 経由の自動デプロイメントを含め、各部品をどこに置けばよいか把握する助けになります。