これは1Monthon25の24班の記事です。
メンバー
ue
はじめに
みなさんこんにちは。23Bのueと申します。
traQが生活の一部になっている私としては、traQがもっと便利だったらいいのにな〜という気持ちがあったので今回はtraQの拡張機能「traQuick」を作りました。
結果として、いろんな人に使ってもらえることになり、優秀賞もいただけました。

ざっくりとした課題・要望
traQ をもっと便利にするために欲しかった 3 つ:
- 引用で画像/添付そのまま見たい
- サイドバーを自分好みに並べ替えたい(ホームチャンネルが複数ほしい)
- 9 点ボタンに自分のよく使うサービス増やしたい
これ全部まとめて解決する拡張機能が traQuick です。



構成ざっくり
- manifest.json (storage / scripting, host_permissions = q.trap.jp)
- background.js: 初期セットとか軽い処理
- content_scripts:
- content_quote.js: 引用 DOM 見張って画像/添付をインライン展開
- content_services.js: 9 点ボタンに項目追加
- content_quick.js: カスタムサイドバー描画
- options.html / options.js: 並べ替え&追加削除 UI (Sortable.js)
- storage.sync に設定保存
気をつけたところ
- content_scripts で完結させて service_worker の “眠る/起きる” 問題を最小化
- 画像大量引用で縦に伸び過ぎる課題 → 今後折りたたみトグル追加予定
- 過剰 Observer 発火を防ぐフラグ整理
今後やりたい
- 引用内画像の折りたたみ/展開トグル
- 設定のエクスポート/インポート (JSON)
入れ方 (部員向け)
詳細はtraQのこのメッセージにあります。
感想
複数人チームで参加することが多い1-Monthonに一人で挑戦し、実際に作りたかったものを作ることができて、多くのtraPerにも喜んでもらえて、さらに優秀賞もいただけてニコニコです。