開発

Reddit友達機能を他サイトで再現するCLIツール「rolodex」公開

Redditの友達ユーザーをハイライトするブラウザ拡張用CSSを生成するCLIツール「rolodex」が公開された。TildesやLobstersでの実装を可能にする。

6分で読める SINGULISM 編集チームが確認・編集

Reddit友達機能を他サイトで再現するCLIツール「rolodex」公開
Photo by Denny Müller on Unsplash

Reddit友達機能の再現を狙うCLIツール

Redditには、特定のアカウントを「友達」に登録する機能がある。承認や通知はなく、ボタンを押すだけで、そのユーザーの投稿やコメントがサイト内でハイライト表示される。Lobstersのxavd.id by xavdidの記事によれば、この単純な機能はオンラインコミュニティに「-partyで誰も知らない人ばかり」と「友達に会える」の違いをもたらす。しかし、TildesやLobstersなど他サイトにはこの機能が存在しない。

xavd.id by xavdidは、この課題をブラウザ拡張のCSSで解決するツール「rolodex」を開発した。Tildesがメンテナンスモードに移行したことを受け、自身で実装を決断したという。ロール化されたユーザー名のリストを読み込み、対象サイトでのハイライト用CSSを自動生成するのがrolodexの目的だ。

rolodexの仕組みと使用方法

rolodexはコマンドラインから実行するCLIツールである。ユーザーはTOML形式の設定ファイルを作成し、ハイライトしたいユーザー名をリストアップする。ツールはこのリストを読み取り、指定サイトのCSSセレクタに基づいたコードを生成する。生成されるCSSは、対象ユーザーのリンクに特定の色(例:#ff4500)を適用するルールで構成される。

現在、rolodexはTildesとLobstersに対応している。生成されたCSSコードをブラウザ拡張Stylusに貼り付けることで、ユーザーのハイライトが有効になる。xavd.id by xavdidは、今後Hacker News(HN)への対応も計画していると述べている。さらに、自作を容易にするため、テンプレートリポジトリxavdid/rolodex-templateも公開された。これはスターターファイルとビルドスクリプトを含み、ユーザーはリポジトリをフォークして個人のリストを作成できる。

現在の制限と課題

rolodexはCSSとCLIベースのため、いくつかの制限がある。ユーザー一覧を変更するには、ローカルファイルを編集し、スクリプトを実行し、結果を手動でアップロードする必要がある。このプロセスは煩雑で、多くの利用者にはハードルが高い。また、デバイス間の同期オプションは限られており、モバイル環境でのサポートも不完全だ。

最も顕著な制約は、Redditが提供するような、フォロー中のユーザーの投稿やコメントを一元表示するフィード機能が欠如している点だ。pure CSSでは、この種の動的なフィード生成は実現できない。xavd.id by xavdidは、この方式を「nothing(何も無いこと)よりは良い」と評しつつ、ネイティブ実装の優位性を強調している。その上で、ソーシャルネットワークの開発・運用者は、フォロー機能を標準搭載すべきだと呼びかけている。

今後の展望とコミュニティの意味

rolodexは、ウェブサイトのネイティブ機能に依存せずに、ユーザー間のつながりを視覚的に強調する画期的なアプローチを示している。ブラウザ拡張を活用すれば、管理者の対応を待たずに個人でコミュニティ体験をカスタマイズできる。これは、個人の認識を高め、サイトへの没入感を深める可能性を秘めている。

ただし、純CSSベースの手法は汎用性に限界がある。不同サイトのHTML構造に応じたセレクタを書き換える手間が掛かり、モバイルアプリ内ブラウザでは動作保証が難しい。xavd.id by xavdidは、「不正規(inauthentic)さが増す世界で、オンラインでの人間的なつながりを構築することがかつてないほど重要になっている」と指摘している。rolodexは、その一端を担う試みと言えるだろう。

編集部の見解

短期的には、rolodexのようなツールは、個人のブラウジング体験を改善するニッチな需要を満たすものに留まる。TildesやLobstersの有志ユーザーの間で、CSSカスタマイズ文化が少し活性化する効果は期待できそうだ。しかし、煩雑な手動プロセスが壁となり、広く普及するには至らないだろう。

長期的に見れば、この記事が指摘する「ネイティブフォロー機能の欠如」は、小規模コミュニティサイトが直面する構造的な課題を浮き彫りにしている。ユーザー間のつながりを可視化する機能は、エンゲージメント向上に直結するが、多くのサイトは実装を後回しにしている。rolodexの存在は、この需要の裏付けを示唆しており、今後のプラットフォーム設計に対する警告と見るべきだ。

編集部が問いたいのは、この種の個人的つながりの可視化が、サイトの多様性や匿名性とどのような緊張関係を持つのかという点だ。ハイライト機能は親密さを生むと同時に、特定ユーザーへの執着や偏見を助長するリスクも抱えている。技術的な再現可能性と、コミュニティ運営における倫理的・社会的影響のバランスをどう取るべきか、広く議論されるべき論点である。

参考

よくある質問

rolodexはどのようにして特定ユーザーのコメントをハイライトしますか?
rolodexはTOMLファイルに指定されたユーザー名リストを読み込み、対象サイト(TildesやLobsters)のHTMLセレクタに対応したCSSルールを生成します。このCSSをブラウザ拡張Stylusなどに適用することで、対象ユーザーのリンク要素に色が付けられ、閲覧中に自動的にハイライト表示される仕組みです。
rolodexで生成されたCSSは、どの程度の柔軟性を持っていますか?
生成されるCSSは、特定のユーザー名を含むリンク要素に対してのみ色を適用するため、サイト全体のデザインに影響を与えず、個人の閲覧体験をカスタマイズするものです。ただし、対象サイトのHTML構造が変更された場合は、ツール側の更新が必要になる場合があります。
Redditのようなネイティブの友達機能と比べて、rolodexにはどのような制約がありますか?
最大の制約は、フォロー中のユーザーの投稿やコメントを一元表示するフィード機能がcssでは実現できない点です。また、ユーザー一覧の更新には手動でのファイル編集とスクリプト実行が必要で、同期やモバイル対応も限定的です。ネイティブ実装のような利便性は再現できていません。
出典: Lobsters

コメント

← トップへ戻る