Chrome 拡張機能:開いているタブを左側にリッチな UI で表示し、タブグループの管理も可能にする拡張機能。
- 開いているタブのタイトルとアイコンをリストとして表示
- タブタイトルをクリックすると、対応するタブをアクティブにする
- タブのグループへの移動
- グループの折りたたみ/展開
- タブの検索機能
- タブの並び替え(ドラッグ&ドロップ)
- 言語: JavaScript
- API: Chrome Extensions API
- バージョン: Manifest V3
- UI フレームワーク: Tailwind CSS
- 依存関係のインストール
npm install- Tailwind CSS のビルド
npm run build開発中は以下のコマンドで自動ビルドが有効になります:
npm run dev.
├── src/
│ └── styles.css # Tailwind CSSの基本設定
├── background.js # バックグラウンドスクリプト
├── content.js # コンテンツスクリプト
├── manifest.json # 拡張機能の設定
├── package.json # 依存関係の管理
├── tailwind.config.js # Tailwind CSSの設定
└── styles.css # ビルドされたCSS
-
manifest.json の作成
- 拡張機能の名前、説明、権限 (
tabs,scripting,storage) を定義 content_scriptsを定義し、content.jsをすべてのページで実行するように設定- Tailwind CSS の設定
- 拡張機能の名前、説明、権限 (
-
content.js の作成
document.documentElementでhtml要素を取得- サイドバー用の
div要素を作成し、Tailwind CSS でスタイルを設定 html.insertBeforeを使用して、サイドバーをhtmlタグの最初の子要素として追加html.style.display = 'flex'を指定して、htmlタグの子要素を横並びにする- タブグループの状態管理
- タブの検索機能の実装
- ドラッグ&ドロップによる並び替え機能の実装
-
background.js の作成
- タブ情報の取得と更新
- タブグループの状態管理
- タブのアクティブ化処理
- タブのプレビュー表示
- タブのピン留め機能
- タブの履歴管理
- カスタムテーマのサポート
- キーボードショートカット