URLごとに双方向ショートカット(Jumpmark)を設定・管理できるChrome拡張機能です。
- 双方向リンク: A→Bを作成すると、B→Aも自動で作成
- Chrome Sync対応: 複数デバイス間でJumpmarkを自動同期
- バッジ表示: 現在のページにJumpmarkがある場合、拡張機能アイコンに数を表示
- スマートなタブ管理: 同じURLのタブがあればフォーカス、なければ新タブを作成
- 編集・削除機能: 既存のJumpmarkを編集・削除可能
- 直感的なUI: シンプルで使いやすいポップアップインターフェース
- 📤 インポート/エクスポート: JSON/CSV/HTML形式でデータのバックアップ・復元
- 📁 ドラッグ&ドロップ: ファイルを直接ドロップしてインポート
- 🔍 重複検出: インポート時の自動重複チェックとマージオプション
- 🎨 高度な管理UI: オプションページでの一括操作と検索・フィルタリング
- 🌙 ダークモード: システム設定に応じた自動テーマ切り替え
Chrome ウェブストアからインストールできます。
-
このリポジトリをクローン
git clone https://github.com/maepon/jumpmark-dock.git cd jumpmark-dock -
Chromeで
chrome://extensions/を開く -
右上の「デベロッパーモード」をON
-
「パッケージ化されていない拡張機能を読み込む」をクリック
-
jumpmark-dockディレクトリを選択
- 拡張機能アイコンをクリック
- 「+ Jumpmarkを追加」ボタンをクリック
- タイトル、URL、アイコンを入力
- 「双方向リンク」をチェック(推奨)
- 「保存」をクリック
- 拡張機能アイコンをクリックしてJumpmarkリストを表示
- 移動したいJumpmarkをクリック
- 同じURLのタブがあればフォーカス、なければ新タブで開く
- Jumpmarkアイテムにマウスホバーでボタンが表示
- 「編集」ボタンで内容変更、「削除」ボタンで削除
- 編集時も双方向リンクの設定が可能
現在のページにJumpmarkがある場合、拡張機能アイコンに青いバッジで数が表示されます。
- 拡張機能アイコンを右クリック → 「オプション」
- 「インポート/エクスポート」タブを選択
- エクスポート形式を選択(JSON/CSV/HTML)
- エクスポート範囲を指定(すべて/選択済み/フィルタ結果)
- フォーマットボタンをクリックして自動ダウンロード
- オプションページの「インポート/エクスポート」タブ
- JSONファイルをドラッグ&ドロップ、または「ファイルを選択」
- インポート設定を確認(既存データとの統合/重複スキップ)
- プレビューで内容を確認
- 「インポート実行」をクリック
- JSON: 完全なデータ形式(推奨)- インポート/エクスポート両対応
- CSV: 表計算ソフト用 - エクスポートのみ
- HTML: ブラウザ表示用 - エクスポートのみ
jumpmark-dock/
├── manifest.json # 拡張機能の設定
├── background.js # バックグラウンドスクリプト(バッジ管理)
├── popup.html # ポップアップUI
├── popup.js # ポップアップロジック
├── popup.css # ポップアップスタイル
├── options.html # オプションページUI(v1.1.0)
├── options.js # オプションページロジック(v1.1.0)
├── options.css # オプションページスタイル(v1.1.0)
├── shared.js # 共通ユーティリティ関数
├── icons/ # アイコンファイル
├── CLAUDE.md # Claude Code開発ガイド
└── README.md # このファイル
- popup.js: 基本的なJumpmarkの管理とUI制御
- options.js: 高度な管理機能(インポート/エクスポート、一括操作)
- background.js: タブ監視とバッジ更新
- shared.js: URL正規化や共通ユーティリティ関数
- Chrome Storage Sync API: Jumpmarkデータの永続化と同期
{
"jumpmarks": {
"example.com/page1": [
{
"id": "jm-unique-id-123",
"title": "関連ページ",
"url": "https://example.com/page2",
"icon": "📝",
"sourceUrl": "example.com/page1",
"created": "2025-06-30T10:00:00Z"
}
]
}
}v1.1.0の変更点: bidirectionalフラグを廃止し、sourceUrlでURL間の関係を動的に検出する方式に変更。
- Chrome 88以上(Manifest V3対応)
- 開発者モードが有効
- ポップアップ: 拡張機能アイコンを右クリック → 「ポップアップを検証」
- バックグラウンド: 拡張機能管理画面で「Service Worker」をクリック
- ストレージ: Chrome DevTools → Application → Storage → Extensions
- ✅ Phase 1: 基本機能(追加、表示、移動、双方向リンク、バッジ)
- ✅ Phase 2: 編集・削除機能、スマートなタブ管理、Chrome Sync対応
- ✅ Phase 3: インポート/エクスポート、高度な管理UI、エラーハンドリング強化
- 自動同期: Chrome Syncが有効な場合、Jumpmarkデータが複数デバイス間で自動同期
- フォールバック: Chrome Syncが無効な場合、ローカルストレージとして動作
- 制限事項: 102KB制限、最大512個のJumpmark、4096バイト/アイテム
- リアルタイム更新: 他デバイスでの変更が即座に反映
- このリポジトリをフォーク
- 機能ブランチを作成 (
git checkout -b feature/amazing-feature) - 変更をコミット (
git commit -m 'Add amazing feature') - ブランチにプッシュ (
git push origin feature/amazing-feature) - プルリクエストを作成
このプロジェクトはMITライセンスの下で公開されています。詳細はLICENSEファイルを参照してください。
Masayuki Maekawa (@maepon)
このプロジェクトはClaude Codeを使用して開発されました。