ハクソク

世界を動かす技術を、日本語で。

Wander – 小さな分散型ツールで小さなウェブを探検する

概要

Wanderコンソールは、個人ウェブサイト間をランダムに巡回できる仕組み。
他のコンソールへ移動することで、異なるサイトのWanderネットワークを体験可能。
自分のコンソールも簡単にセットアップ可能。
Wanderネットワークはコミュニティ主導で拡大中。
詳細や導入方法はcodeberg.org/susam/wanderで案内。

Wanderコンソールの概要

  • Wanderコンソールは、Wanderコミュニティ内のランダムなウェブサイトやページを閲覧できる仕組み
  • Wanderコミュニティは、個人が自分のウェブサイトを運営・管理するネットワーク
  • このコンソールを使い、他のWanderコンソールから推薦されたページを再帰的に取得して閲覧可能
  • 別のコンソールに移動すれば、そのウェブサイトのWanderネットワークからブラウズ可能
  • コンソールの切り替えは必須ではなく、現在のコンソールでも十分にネットワークを楽しめる

Wanderコンソールの導入方法

  • 自分のウェブサイトにWanderコンソールを設置する手順
    • ZIPファイルをダウンロード
    • index.htmlwander.jsを抽出し、自サイトの**/wander/**ディレクトリに配置
    • wander.jsを編集し、codeberg.org/susam/wanderの指示に従う
  • セットアップ完了後、Wanderコンソールのリンクをコミュニティスレッドで共有
  • 他の参加者が自分のコンソールをネットワークに追加することで、さらに多くのサイトと連携可能

Wanderネットワークの特徴

  • コミュニティ主導で運営される分散型ネットワーク
  • 個人ウェブサイト同士のつながりを強化
  • ネットワークの拡大や運用は各参加者の自主性に委ねられる

追加情報とサポート

  • 詳細や最新情報はcodeberg.org/susam/wanderで確認
  • 導入手順コミュニティ参加方法も同ページで案内

Hackerたちの意見

こんにちはHN!このツールはKagi Small Webからインスパイアを受けました(最近のスレッド: https://news.ycombinator.com/item?id=47410542)。ここでよく言われる懸念は、Kagi Small Webが現在、ブログ、漫画、YouTubeチャンネルしか受け付けていないことです。任意の小さなウェブサイトは受け入れられません。その制限が、Wanderを作るきっかけになりました。Wanderは完全に分散型です。誰でも自分のウェブサイトでホストできます。構成はたったの2つのファイル:Wanderコンソール用の`index.html`と、他のWanderコンソールへのリンクを含む`wander.js`です。ちょっとしたウェブリングみたいだけど、もっと柔軟です。各コンソールは、任意の数のサイトや他のコンソールにリンクできます。サーバーサイドのコードも、データベースも、インストールするものもありません。ウェブサイトがあれば、たった2つのファイルをアップロードするだけで設定できます。実際、GitHub PagesやCodeberg Pagesでもホストできます。もしこのアイデアが気に入ったら、ぜひネットワークに参加してください。成長するのを見たいです。詳しい設定方法や動作についてはここにあります: https://codeberg.org/susam/wander#readme
これ、めっちゃ楽しい!これを導入して、問題についてリンクを共有するつもりだよ。ひとつ問題があるんだけど、もし私のコンソールへのリンクを含めてもらって、他のリンクを全く貼らなかったら、訪問者を私のおすすめの中に閉じ込めちゃうことになる。もしそれが望ましくないなら、クライアントがこのセッションで発見したすべてのコンソールのリストを保持して、そのリストからランダムに選ぶことで回避できるかも。
17個のURLだけ含まれています: https://susam.net/wander/wander.js
上記のリンクからリンクしているhttps://dahlstrand.net/wander/wander.jsの17個と、https://www.siddharthagolu.com/wander/wander.jsの26個を合わせて、合計54個のURLです。URLの数は、もっと多くの人がこのツールを自分のウェブサイトに追加し、お互いを隣人として追加することで増えていきます。このツールは隣接するコンソールを発見し、そこからのURLを表示することができます。
いいねと思いたいけど、なんで/wanderページにリンクをたくさん置いて、順番をランダムにするだけじゃダメなのか、よくわからないな。
発見は遷移的だからです。ワンダーすると、別のコンソールのwander.jsを取得して、そのページから選ぶので、単に一人のリストを探るだけじゃなくて、キュレーションされたリストのグラフを横断している感じです。静的なリンクページではそれができるわけじゃないですからね。
あなたが言ってることは、ブログロールみたいだね。実際、多くの人がそれを維持してるし。ちなみに、私のはここにあるよ: https://susam.net/roll.html でも、WanderはStumbleUponみたいな感じだけど、みんなが通らなきゃいけない中央集権的なサービスは必要ないんだ。ブログロールの一つの制約は、再帰的におすすめを発見するための一貫した方法を提供しないことだね。例えば、あなたのウェブサイトAに行くと、ウェブサイトBをおすすめされるかもしれない。次にBに行くけど、Bには全くおすすめがないかもしれない。一方で、Wanderの各インスタンスには明確なおすすめリストがあるんだ。それに、隣接するサイトの/wanderページにもリンクしてる。ウェブサイトAの/wanderページに行くと、その隣接サイト(B、Cなど)を見つけられるし、その隣接サイトの隣接サイトも探せる。そこからおすすめリンクを取得して、同じコンソール内で表示できるんだ。さらに、訪問者がそこからブラウジングを続けたい場合、現在のコンソールを離れて隣のコンソールに移動する方法も提供してるよ。
このコンセプトが大好きです。ワンダーボタンは素晴らしいけど、どのページが好きかを決めるためにもう少しキュレーションが必要だし、実際のコンテンツにアクセスするのがちょっと面倒かな。今後のワークフローが知りたいです。数週間ごとにリポジトリを再ダウンロードして、新しいサイトがリストに追加されているかを確認する感じですか?
このプロジェクトを見てくれてありがとう。コンセプトが気に入ってもらえて嬉しいです。あなたの質問を正確に理解できたかはわからないけど、一応回答してみますね。もし間違ってたら、遠慮なく訂正してくれたり、もう一度聞いてください。数週間ごとにhttps://codeberg.org/susam/wanderを再ダウンロードする必要はありません。設定は一度きりの作業です。そのリポジトリから、正確に2つのファイル(index.htmlとwander.js)をコピーして、自分のウェブサーバーに、できれば/wander/ディレクトリ内に置くだけです。その後は、wander.jsファイルだけを管理すれば大丈夫です。自分のリンクをキュレーションして、どの他のWanderコンソールを隣人としてリンクするかを選ぶことができます。wander.jsの内容は完全に自分で定義できます。リポジトリのバージョンと比較したりする必要はありません。実際、リンクを頻繁に更新したりキュレーションしたりすることにこだわらなければ、両方のファイルを無期限にそのままにしておいても大丈夫です。唯一の欠点は、いくつかのリンクがリンクロットに陥る可能性があることで、それがワンダリング体験に影響を与えるかもしれません。だから、時々リンクを見直して死んでいるものを削除するのが助けになるかもしれませんが、それ以外は継続的なメンテナンスは必要ありません。
基本からスタンブルアポンを発明している感じです。
それ…いいことみたいだね!
すごくクールだね。昔、StumbleUponにハマってたのを思い出す。キュレーションされた発見は、YouTubeみたいな現代のプラットフォームでの最大の不満の一つだよね。本当に新しいものや普段の興味の外にあるものを見つけるのは本当に難しいし、ウェブでも同じことが言える。探したいトピックがあればそれでいいけど、自分では絶対に思いつかないようなランダムなものを見つけるのはもっと難しい。
StumbleUponは私の人生の多くの興味につながったから、これには嬉しいよ。
新しいウェブサイトやGitHubリポジトリをスキャンして、他のものとは違うものを探すサービスを考えたことがあるんだ(外れ値検出にhdbscanみたいなものを使って)、人々がフォローできるフィードを作るんだ。
Geminiやgopherのサポートを含めることを考えたことある?そこにはとても素敵な小さなウェブコミュニティがあるよ。
本当に素晴らしいね。すぐに自分の小さなブログに追加したよ: https://hugo0.com/wander
Cloudhiker.netもずっとこれをやってるよね。ウェブを広げるための草の根的な試みが増えてきて嬉しいな(いや、正確に言うと、本来の目的に戻すって感じかな)。