【3分で作れる】初心者向けにシンプルなChrome拡張機能を開発する方法を丁寧に解説

Featured image of the post

はじめに

「最速で簡単な拡張機能を作る手順」をスクショ付きで丁寧に解説する😊

対象読者

初めてChrome拡張機能を開発する人。

作るもの

コンソールに「Hello World」と表示するだけのシンプルな拡張機能を作る。

Image in a image block

※この記事ではChromeウェブストアに公開はせず、ローカルで動かすところまで解説する。

結論

「manifest.json」と「main.js」の2ファイルさえあれば拡張機能として動く。

✅コピペするだけでOKなので3分もあれば拡張機能が作れる。

作り方

✅たった5ステップで簡単に作れる。

【手順1】HelloWorldフォルダを新規作成
  1. 任意の場所に「HelloWorld」という名前のフォルダを作る。

    (フォルダ名は何でもいい)

    Image in a image block

  2. このフォルダを「VSCode」や「Cursor」などのエディタで開く。
    Image in a image block

【手順2】manifest.jsonを新規作成

✅まず初めに、必須の設定ファイル「manifest.json」を作る。

  1. 「manifest.json」という名前の空のファイルを作る。

    (ファイル名は必ずmanifest.jsonにする)

    Image in a image block

  2. 「manifest.json」に以下をコピペする。

    (このまま貼り付けるだけでOK!)

    {
      "name": "Hello Worldのテスト用拡張機能!",
      "version": "1.0.0",
      "manifest_version": 3,
      "description": "これはテスト用の拡張機能です。",
      "content_scripts": [{
        "matches": [
          "<all_urls>"
        ],
        "js": [
          "main.js"
        ]
      }]
    }

【手順3】main.jsを新規作成

拡張機能の処理を書く場所「main.js」を作る。

  1. 「main.json」という名前の空のファイルを作る。

    (先ほどmanifest.jsonで"main.js"というファイル名を指定したので、それに合わせる。)

    Image in a image block

  2. 「main.json」に以下をコピペする。

    (このまま貼り付けるだけでOK!)

    console.log("Hello World");

    【補足】もう少し本格的な処理も書ける!

    今回はコンソールにHello Worldを表示するだけだが、通常のJavaScriptと同様querySelectorgetElementByIdなどを使ってDOMを操作することもできる。

    例:bodyタグの背景色を赤色にする。

    // ページのbody要素を取得
    const body = document.querySelector("body");
    
    // ページの背景色を変更
    body.style.backgroundColor = "red";

    このコードのまま以降の手順を進めると、最終的に「bodyタグの背景色が赤色になる拡張機能」が作れる。

    Image in a image block

💡
これでプログラム作成は終わり。

あとは拡張機能を有効化するだけ!

【手順4】自作した拡張機能を有効化する

✅自作した拡張機能をChromeに読み込ませる(=有効化する)。

  1. Chromeで拡張機能ページを開く。

    chrome://extensions/

    (アドレスバーに↑をコピペしてEnter)

  2. 画面右上の「デベロッパーモード」をオンにする。
    Image in a image block

  3. 画面左上の「パッケージ化されていない拡張機能を読み込む」をクリックする。
    Image in a image block

  4. HelloWorldフォルダを選択すると、自作の拡張機能が有効になる!
    Image in a image block

    こうなっていたら成功!

    Image in a image block

【手順5】動作確認

✅main.jsに書いたプログラムが動いているか確認する。

  1. Chromeで任意のページを開く。

    (今回はQiitaを開いた)

    Image in a image block

  2. [F12]キーでデベロッパーツールを開き、コンソールを開く。

    Hello Worldと表示されていれば、正常に自作の拡張機能が動いている!

    (スクリプトエラーが出ているが、これはもともとQiitaのページで発生しているエラー。今回作った拡張機能とは関係ないので無視してOK!)

    Image in a image block

まとめ

たった2つのファイルを作るだけで、自作のChrome拡張機能を作ることができた✨

今回はコンソールに表示するだけだったが、もちろん本格的なものも開発できる!

  • 普段のJavaScriptを書く感覚で簡単にDOM操作も可能✅
  • backgroundという機能を使うことで「拡張機能のボタンを押したときに〇〇する」なども実現可能✅

もっと理解したい場合

今回触れいていない機能もまだまだあるので、一度公式ドキュメントにも目を通すと理解が深まりそう

参考サイト