Reactを使用したChrome拡張機能の作成方法


  1. Reactプロジェクトのセットアップ: まず、Reactプロジェクトを作成します。ターミナルで以下のコマンドを実行します。
npx create-react-app my-extension

これにより、新しいReactプロジェクトが作成されます。

  1. Chrome拡張機能の基本構造の作成: 次に、Chrome拡張機能の基本的なファイル構造を作成します。以下のようなファイルとディレクトリを作成します。
my-extension/
  public/
    index.html
  src/
    manifest.json
    background.js
    popup/
      Popup.js
      Popup.css
  • public/index.html: メインのHTMLファイルです。
  • src/manifest.json: Chrome拡張機能のマニフェストファイルです。
  • src/background.js: バックグラウンドスクリプトです。
  • src/popup/Popup.jssrc/popup/Popup.css: ポップアップウィンドウのコンポーネントとスタイルです。
  1. マニフェストファイルの設定: src/manifest.jsonファイルを編集して、拡張機能の設定を行います。以下は基本的な例です。
{
  "manifest_version": 2,
  "name": "My Extension",
  "version": "1.0",
  "background": {
    "scripts": ["background.js"],
    "persistent": false
  },
  "browser_action": {
    "default_popup": "popup/index.html"
  },
  "permissions": ["tabs"]
}
  1. ポップアップコンポーネントの作成: src/popup/Popup.jsファイルを編集して、ポップアップウィンドウのコンポーネントを作成します。以下は例です。
import React from "react";
function Popup() {
  return (
    <div>
      <h1>Hello, Popup!</h1>
    </div>
  );
}
export default Popup;
  1. バックグラウンドスクリプトの作成: src/background.jsファイルを編集して、バックグラウンドスクリプトを作成します。以下は例です。
chrome.browserAction.onClicked.addListener(function (tab) {
  chrome.tabs.create({ url: "https://www.example.com" });
});
  1. ビルドとパッケージング: 最後に、拡張機能をビルドしてパッケージングします。以下のコマンドを実行します。
npm run build

これにより、buildディレクトリが作成され、拡張機能のビルドが生成されます。

以上がReactを使用してChrome拡張機能を作成する基本的な手順です。このチュートリアルでは、Reactの構成、マニフェストファイルの設定、ポップアップコンポーネントの作成、バックグラウンドスクリプトの作成、ビルドとパッケージングなどの要素をカバーしました。これにより、パワフルで柔軟なChrome拡張機能を作成する基礎を学ぶことができます。より詳細な情報やさらなるコード例については、公式のReactドキュメントやChrome拡張機能の開発者ガイドを参照してください。